no message

Former-commit-id: 07cf3bfbbd524a7cba0d122298f8c841010a4e55
Former-commit-id: c900623564b914d9db47b14633ba79e258142db7
Former-commit-id: 2cffd03327ce8647045ddb5073d7752bbbdba533
This commit is contained in:
李杨
2018-01-27 10:25:59 +08:00
parent 509b811fd2
commit fc181b9446
7 changed files with 93 additions and 7 deletions

View File

@@ -26,7 +26,8 @@ Mock.mock('/login', 'post', ({url, type, body}) => {
code: 0,
msg: '登陆成功',
data: {
...user
...user,
token: '1234567890'
}
}
} else {

View File

@@ -82,6 +82,7 @@ export default {
}
Cookies.set('username', res.username, setting)
Cookies.set('password', res.password, setting)
Cookies.set('token', res.token, setting)
this.$router.push({
name: 'index'
})

View File

@@ -4,7 +4,7 @@ import axios from 'axios'
axios.interceptors.response.use(res => {
// 在这里对返回的数据进行处理
if (res.data.code) {
if (res.data.code !== undefined) {
if (res.data.code !== 0) {
Message.error(res.data.msg)
return Promise.reject(res.data.msg)

View File

@@ -1,16 +1,37 @@
import Vue from 'vue'
import VueRouter from 'vue-router'
import Cookies from 'js-cookie'
// 在菜单中显示的那部分路由
import { router } from '@/router/menu/index.js'
import * as menu from '@/router/menu/index.js'
// 不在菜单中显示的那部分路由
import invisibleRouter from './invisible/index.js'
import invisible from './invisible/index.js'
Vue.use(VueRouter)
export default new VueRouter({
let router = new VueRouter({
routes: [
...router,
...invisibleRouter
...menu.router,
...invisible
]
})
router.beforeEach((to, from, next) => {
// 需要身份校验
if (to.meta.requiresAuth) {
// 这里暂时将cookie里是否存有token作为验证是否登陆的条件 请根据自身业务需要修改
if (Cookies.get('token')) {
next()
} else {
// 没有登陆的时候跳转到登陆界面
next({
name: 'login'
})
}
} else {
// 不需要身份校验 直接通过
next()
}
})
export default router

View File

@@ -10,6 +10,9 @@ export default [
{
path: 'index',
name: 'index',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/core/index/index.vue'], resolve) }
}
]

View File

@@ -3,6 +3,9 @@ export const menu = {
title: '业务演示',
path: '/demo/business',
name: 'demo-business',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/components/core/MainLayout/index.vue'], resolve) },
// redirect: {
// name: ''
@@ -18,6 +21,9 @@ export const menu = {
icon: 'file-o',
path: 'data/worker',
name: 'demo-business-data-worker',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/business/data/worker/index.vue'], resolve) }
}
]

View File

@@ -3,6 +3,9 @@ export const menu = {
title: '功能',
path: '/demo/plugins',
name: 'demo-plugins',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/components/core/MainLayout/index.vue'], resolve) },
// redirect: {
// name: 'demo-plugins-marked-readme'
@@ -18,6 +21,9 @@ export const menu = {
icon: 'file-o',
path: 'marked/demo',
name: 'demo-plugins-marked-demo',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/marked/demo.vue'], resolve) }
},
{
@@ -25,6 +31,9 @@ export const menu = {
icon: 'file-o',
path: 'marked/demoHighlight',
name: 'demo-plugins-marked-demoHighlight',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/marked/demoHighlight.vue'], resolve) }
}
]
@@ -39,6 +48,9 @@ export const menu = {
icon: 'file-o',
path: 'simpleMDE/demo',
name: 'demo-plugins-simpleMDE-demo',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/simpleMDE/demo.vue'], resolve) }
}
]
@@ -53,6 +65,9 @@ export const menu = {
icon: 'file-o',
path: 'quill/demo',
name: 'demo-plugins-quill-demo',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/quill/demo.vue'], resolve) }
}
]
@@ -67,6 +82,9 @@ export const menu = {
icon: 'file-o',
path: 'font-awesome/list',
name: 'demo-font-awesome-list',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/font-awesome/list.vue'], resolve) }
},
{
@@ -74,6 +92,9 @@ export const menu = {
icon: 'file-o',
path: 'font-awesome/select',
name: 'demo-font-awesome-select',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/font-awesome/select.vue'], resolve) }
}
]
@@ -88,6 +109,9 @@ export const menu = {
icon: 'file-o',
path: 'vue-grid-layout/demo',
name: 'demo-plugins-vue-grid-layout-demo',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/vue-grid-layout/demo.vue'], resolve) }
}
]
@@ -102,6 +126,9 @@ export const menu = {
icon: 'file-o',
path: 'timeago/demo',
name: 'demo-plugins-timeago-demo',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/timeago/demo.vue'], resolve) }
}
]
@@ -116,6 +143,9 @@ export const menu = {
icon: 'file-o',
path: 'papaParse/demo',
name: 'demo-plugins-papaParse-demo',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/papaParse/demo.vue'], resolve) }
}
]
@@ -130,6 +160,9 @@ export const menu = {
icon: 'file-o',
path: 'countup/demo',
name: 'demo-plugins-countup-demo',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/countup/demo.vue'], resolve) }
}
]
@@ -144,6 +177,9 @@ export const menu = {
icon: 'file-o',
path: 'clipboard-polyfill/demo',
name: 'demo-plugins-clipboard-polyfill-demo',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/clipboard-polyfill/demo.vue'], resolve) }
}
]
@@ -158,6 +194,9 @@ export const menu = {
icon: 'file-o',
path: 'js-cookie/demo',
name: 'demo-plugins-js-cookie-demo',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/js-cookie/demo.vue'], resolve) }
}
]
@@ -172,6 +211,9 @@ export const menu = {
icon: 'file-o',
path: 'highlight/demo',
name: 'demo-plugins-highlight-demo',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/highlight/demo.vue'], resolve) }
}
]
@@ -186,6 +228,9 @@ export const menu = {
icon: 'file-o',
path: 'mock/demoDTD',
name: 'demo-plugins-mock-demoDTD',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/mock/demoDTD.vue'], resolve) }
},
{
@@ -193,6 +238,9 @@ export const menu = {
icon: 'file-o',
path: 'mock/demoDPD',
name: 'demo-plugins-mock-demoDPD',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/mock/demoDPD.vue'], resolve) }
},
{
@@ -200,6 +248,9 @@ export const menu = {
icon: 'file-o',
path: 'mock/ajax',
name: 'demo-plugins-mock-ajax',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/mock/ajax.vue'], resolve) }
}
]
@@ -214,6 +265,9 @@ export const menu = {
icon: 'file-o',
path: 'vue-splitpane/demo',
name: 'demo-plugins-vue-splitpane-demo',
meta: {
requiresAuth: true
},
component: resolve => { require(['@/pages/demo/plugins/vue-splitpane/demo.vue'], resolve) }
}
]