请问vue如何控制在地址栏直接输入地址,不管怎么样,首先进入的都是Login页面呢?

后台是这么要求的,他想让我把login单独提出来,他后台进行拦截,但是我感觉vue的路由应该能够实现这个效果

阅读 8.7k
3 个回答

Vue 了就不要跟后台混合 在全局钩子处理就好了
详细请参考 VueRouter 文档:http://router.vuejs.org/zh-cn...

main.js

import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)

const router = new VueRouter({ routes: [
  { path: '/' },
  { path: '/login' },
  { path: '/profile', meta: { requiresAuth: true } },
] })

router.beforeEach((to, from, next) => {
  // 可以在路由元信息指定哪些页面需要登录权限
  const islogin = false // 假设没有登录(这里应从接口获取)
  if (to.meta.requiresAuth && !islogin) { // 需要登录授权,这里还需要判断是否登录
    next('/login') // 跳转到登录
    return
  }
  next()
})

vue-router里面有个重向的嘛,然后你就判断是不是第一次进入你的网页,是的话就直接重定向到你的登录页就好了

在beforeEach判定是否登陆啊.没有登陆成功就跳去login就好了啊

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题