您的位置:首页 > Web前端 > Vue.js

vue单页面项目返回上一页无效,链接变化了,但是页面没有变化

2019-07-17 17:05 399 查看
原文链接:http://www.cnblogs.com/LChenglong/p/11202177.html

在最近的项目中,返回上一页没有效果,经过好久的排查才发现问题,是路由守卫写法不规范导致。

 

在项目中用路由守卫做了登录拦截,没登录的跳转到登录页面。页面跳转和拦截都没问题,但是返回上一页就不行了,也没有报错。

代码贴上来

router.beforeEach((to, from, next) => {
if (to.meta.loginCheck) {     //登录判断,如果登录了则正常跳转,如没有登录,则先登录
let gesToken =localStorage.getItem('gesToken');
if(gesToken){
next();
}else{
router.replace({path:'/login'});
    next();  //这行是重点,bug的原因就在这
}; } else { next(); }; });

 

本来以为next()的作用就是下一步跳转页面,后来发现,不能正常返回上一页,就是因为我使用完router.replace()之后,没有再使用next();

next()无论什么情况都是必须写的!!

 

转载于:https://www.cnblogs.com/LChenglong/p/11202177.html

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐