前言:
使用vue的时候总会使用到前端vue-router路由,检验登陆状态,检验是否路由跳转,就需要路由守卫来解决, 这一篇将会多多少少能够让你运用路由守卫。
一、全局路由守卫
首先,
在vue文件目录里找到 main.js 文件
import Vue from 'vue'
import App from './App'
import router from './router'
import store from './store'
router.beforeEach((to, from, next) => {
// ...
});
new Vue({
el: "#app",
store,
router,
components: {
App },
template: "<App/>"
});
这是全局的路由守卫,每次在路由跳转的时候,都会触发这个函数。
其中,
to 就是去的路由 去往哪儿
from 是跳转前的路由 从哪儿跳过来的
next 就是确认跳转 ok
router.beforeEach((to, from, next) => {
//vuex里面的userinfo是否已经存在,不然就直接跳转到登录页面
if(store.state.userInfo || to.path === "/login") {
next