vue路由为当前页面时,链接点击之后,页面不重选加载刷新页面

例如当前页面路由为:
http://localhost:8080/#/song/1
链接为:
http://localhost:8080/#/song/2
从当前1页面跳转到2页面,路由发生了变化,可是数据没有刷新?怎么回事?手动F5刷新之后,页面数据又发生变化了,WHY?

原因

我猜想是1和2页面都是动态路由,是song页面的参数, song这个页面在1的时候都挂载加载完毕了,点2的时候,虽然路由跳转了,但是系统判断还在song这个页面,并没有变化,所以没有改变数据。

解决办法:

监听路由变化,变化之后执行动态加载数据,或者刷新当前页面!

watch: {
    $route () {
      this.$router.go(0) //刷新路由,整体页面刷新
      this.init() //重新初始化,局部刷新
    }
  }

解决vue页面跳转后不刷新数据的问题!-Qui-Note

两个方式都能实现数据刷新,就看想要什么样的效果了!区别在这篇《vue刷新当前页面的几种方式!

end,又跳出一个vue坑!