vue-router进行页面跳转路径没有变化时响应物理返回

1、在mounted挂载bus方法:

mounted(){

    let _this = this;

    this.$bus.$on("view",function(){

        //路由跳转后进行的操作

      });

}


2、跳转某个页面时在方法中添加后缀以及query:

this.$router.push({path:this.$route.path+'?view=1',query:{view:1}})

//query可用于判断当前路径属于哪个页面(?与&的参数需要调用方法取出,所以用query更方便)

//添加后缀后,点击物理返回即时浏览器自身的返回


3、app.vue监听路由():

  watch :{

    $route(to,from){

      if(to.path == from.path){ //判断path是否一样

        if(from.query.view && !to.query.view){ //判断query

          this.$bus.$emit("view");  //调用bus方法

        }

      }

    }

  },

最后记得在自己写的各种方法进行关闭页面或者返回时,也要把路径返回哦

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容