猿问

vuex+全局路由钩子 怎么实现路由跳转拦截?

**我想模拟一个路由拦截 判断登陆状态 true的话就正常跳转,
false就跳转到登陆页面 但是报错好像进入了死循环 我感觉逻辑没问题啊 
求大神 开导开导 哪里出了问题**

//main.js

import Vue from 'vue'

import App from './App'

import router from './router'

import store from './vuex/store'

Vue.config.productionTip = false


router.beforeEach((to, from, next) => {

  store.state.islogin?next():next('/log')

})


//store

import Vue from 'vue'

import Vuex from 'vuex'

Vue.use(Vuex);


const state = {

  islogin:false

}


12345678_0001
浏览 487回答 1
1回答

Qyouu

router.beforeEach((to, from, next) => {  if (to.meta.Auth) {    if (store.state.islogin) {      next();    } else {      router.push({ name: 'login' })    }  } else {    next();  }})路由{      path: '/admin',      name: 'admin',      meta: {        Auth: true, // 需要登录      },      component: Admin('admin')}
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答