【发布时间】:2018-02-13 03:59:03
【问题描述】:
我正在使用最新的 Framework7 Vue Webpack 入门包。
我的默认页面 ('/') 是登录页面。我的计划是在应用程序中的任何页面被请求时立即运行 xhr 请求。
- 所以我尝试将 isLoggedIn() 调用放在 onF7Ready(f7) 中。如果登录,我想我会用它把用户带到主屏幕 - self.$f7router.navigate('/home/');否则我会将用户带到登录页面。然后我了解到 $f7router 只能在路由组件中访问。
- 然后我想我会将isLoggedIn() 检查放在每个页面的pageInit() 中。所以我尝试将该代码放在 login.vue 文件中
on: { pageInit(e) {$f7router 在这里可用,但 self.$f7router.navigate('/home/');不起作用。同样的 self.$f7router.navigate('/home/');但是,如果我在同一个 login.vue 文件中的其中一种虚拟方法中使用它,它确实有效。
即使上面的代码确实有效,也必须有更好的方法来检查用户是否已登录,然后以比我正在做的更好的方式做事。除了 ('/') 之外,我的所有路由都需要身份验证。
谁能告诉我应该如何处理这个非常标准的问题?非常感谢。
【问题讨论】:
-
我正在检查 ajax 请求,如果收到 401 则意味着我应该重定向到登录页面。
标签: javascript cordova vue.js vuejs2 html-framework-7