Vue跳转到本页面跳转,解决只是传参不同,页面不刷新的问题

最近新来了一批小朋友,做我之前做过的项目,老大让我带带他,我还是个需要人带的菜鸟啊!!!

首先是这个么需求,文章详情右侧菜单有推荐文章,点进去还是文章详情,一想很简单是不是,后台配的是全链接,http://xxxx.com?id=1这样的,寻思直接跳转不就行了

window.location.href = url;

然后页面是跳转了,但是没有重新调接口。。。页面参数变了但是数据不变,解决办法就是。。。

加一个侦听器,监听路由的变化就行了

watch: {
    $route (to, from) {
      this.$router.go(0)
    }
  },

其中this.$router.go(0)为刷新页面,但此方法可能在Safari中无法实现,还可以用js原生的方法:window.location.reload()

 

我是参考的这篇文章,写博不易,标明出处,我是个好人。o(* ̄▽ ̄*)ブ

https://www.cnblogs.com/jane2160/p/11573315.html

 

----------------------------------------------------------------------------------

上周本来就只负责打个包,结果自己写了好久的东西出问题了,还是这个跳转的问题

用的是this.$router.push()跳转,用上面的方法不行,然后用下面的方法解决的~记得改一下自己对应的参数

created(){
    this.id = this.$route.query.id;
    this.getDetail();
  },
 watch: {
    $route (to, from) {
      if(to.query.id != from.query.id){
        this.id =  to.query.id;
        this.getDetail(); //重新加载数据
      }
    }
  },

 

 

posted @ 2021-11-15 14:04  西贝小小凤  阅读(1448)  评论(0编辑  收藏  举报