Commit b722a8c0 by Jay

登入頁面導向

parent 63ccc575
...@@ -27,7 +27,7 @@ router.beforeEach((to, from, next) => { ...@@ -27,7 +27,7 @@ router.beforeEach((to, from, next) => {
next(); next();
} else { } else {
alert('沒有權限進入該頁面'); alert('沒有權限進入該頁面');
next(from.path); next('/home');
} }
} else { } else {
next(from.path); next(from.path);
...@@ -38,7 +38,14 @@ router.beforeEach((to, from, next) => { ...@@ -38,7 +38,14 @@ router.beforeEach((to, from, next) => {
if (to.path === '/login') { if (to.path === '/login') {
next(); next();
} else { } else {
next('/login'); localStorage.setItem('lastUrl', to.fullPath);
// this.$router.push({ name: 'login', query: { redirect: '/path' } });
next({
path: '/login',
query: {
nextUrl: to.fullPath
}
});
} }
} }
}); });
......
import Vue from 'vue'; import Vue from 'vue';
import VueRouter from 'vue-router'; import VueRouter from 'vue-router';
import Home from '../views/Home.vue'; import Home from '../views/Home.vue';
import PageA from '../views/PageA.vue'; import Login from '../views/Login.vue';
import PageB from '../views/PageB.vue';
import PageC from '../views/PageC.vue';
Vue.use(VueRouter); Vue.use(VueRouter);
const routes = [ const routes = [
{ {
path: '/login', path: '/login',
name: 'login', name: 'login',
component: () => import(/* webpackChunkName: "login" */ '../views/Login.vue'), component: Login
isMenu: false
// props: { title: '登入' },
}, },
{ {
path: '/home', path: '/home',
...@@ -27,7 +23,7 @@ const routes = [ ...@@ -27,7 +23,7 @@ const routes = [
{ {
path: '/PageA', path: '/PageA',
name: 'PageA', name: 'PageA',
component: PageA, component: () => import(/* webpackChunkName: "PageA" */ '../views/PageA.vue'),
isMenu: true, isMenu: true,
icon: 'mdi-home', icon: 'mdi-home',
admin: true, admin: true,
...@@ -37,7 +33,7 @@ const routes = [ ...@@ -37,7 +33,7 @@ const routes = [
{ {
path: '/PageB', path: '/PageB',
name: 'PageB', name: 'PageB',
component: PageB, component: () => import(/* webpackChunkName: "PageB" */ '../views/PageB.vue'),
isMenu: true, isMenu: true,
icon: 'mdi-home', icon: 'mdi-home',
admin: true, admin: true,
...@@ -47,7 +43,7 @@ const routes = [ ...@@ -47,7 +43,7 @@ const routes = [
{ {
path: '/PageC', path: '/PageC',
name: 'PageC', name: 'PageC',
component: PageC, component: () => import(/* webpackChunkName: "PageC" */ '../views/PageC.vue'),
isMenu: true, isMenu: true,
icon: 'mdi-home', icon: 'mdi-home',
admin: true, admin: true,
......
...@@ -52,7 +52,13 @@ export default { ...@@ -52,7 +52,13 @@ export default {
Password: this.password Password: this.password
}); });
if (loginState.Success) { if (loginState.Success) {
const url = localStorage.getItem('lastUrl');
if (url) {
localStorage.removeItem('lastUrl');
this.$router.push(url);
} else {
this.$router.push('/home'); this.$router.push('/home');
}
} else { } else {
this.snackbarVisible = true; this.snackbarVisible = true;
this.errMsg = loginState.Msg; this.errMsg = loginState.Msg;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment