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

摘要:
在最近的项目中,返回上一页没有效果,经过好久的排查才发现问题,是路由守卫写法不规范导致。页面跳转和拦截都没问题,但是返回上一页就不行了,也没有报错。

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

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

代码贴上来

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()无论什么情况都是必须写的!!

免责声明:文章转载自《vue单页面项目返回上一页无效,链接变化了,但是页面没有变化》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇基于Vue实现拖拽效果及阻止拖拽解决:mysql5.7 timestamp默认值‘0000-00-00 00:00:00’报错下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

js中 转义字符

(1)针对双引号“”的使用: html= "<a href="javascript:void(0)" onclick="getSubContent('" +(choices[next])[0]+ "','" +(choices[next])[1]+ "','" +(choices[next])[2]+ "','" +((choices[next])...

实现Vue的多页签组件

在之前的博客中  关于vue的多页面标签功能,对于嵌套router-view缓存的最终无奈解决方法  有写过vue的多页签功能的解决方案 可以看到我当时那个多页签的组件还是比较简单 的,只有打开跟关闭功能,后面有不少网友找我,能不能实现刷新当前页,关闭其它页面,关闭左边页面,关闭右边页面的功能。 这几天项目上线后有点时间,把这个多页签组件给完善一下。 直接...

Vue中引入TradingView制作K线图

**前言: 本文使用的是1.10版本 , 可通过TradingView.version()查看当前版本. 附上开发文档地址:https://zlq4863947.gitbooks.i...** 一、修改datafeed.js为export导出,并在vue文件引入TradingView内部代码charting_library.min.js和datafeed....

vue之监听事件

<template> <div> <!-- tab分页 --> <div> <a-tabs default-active-key="test" @change="callback" type="card"> <a-tab-pane key="t...

使用vue vantUi框架 根字体是37.5 和默认根字体75不一致,导致页面组件样式变小

VUE 使用的时候,想要做移动端自适应,而一开始没有料到用vantUI框架,所以在utils.js中,由于引用了px2rem-loader和lib-flexible,所以要设置: const px2remLoader = {loader:'px2rem-loader',options:{remUnit:75}} 但是后期,发现自己要用vantUI框架,而当...

一沙框架(yishaadmin) 前端引入VUE的实现方法

一沙框架(yishaadmin) 前端引入VUE的实现方法 1、下载vue.js,加入项目中,如下图 2、页面代码如下,注意注释的内容,数据请求的实现方法 <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device...