vue2.0之页面缓存问题

比如有一个列表页面,然后列表每项都有一个详情
在vue2.0中出现了列表页面是每次都重新加载数据,但是详情页面却只在第一次加载的时候调用数据,如果返回到列表再进入详情那么页面是不会重新渲染页面

阅读 8.8k
5 个回答

你可以在路由钩子里面做请求。不要在created钩子里面,在beforeRouteEnter钩子里面
比如这样Image
vm就是当前的Vue实例

需要在某个生命钩子里重新获取数据,具体哪个看官方文档吧

我在想你所谓的“详情”是不是弹出一个Modal或者仅仅显示一个div,没有@lavyun提到的路由变化?
如果你的浏览器的href没有变化不会触发路由更新,而路由更新,本身就会重新请求数据。
如果是用div展示详情,你需要用v-if,点击“详情”时,让v-if等于true,就会重建div。

如果你的详情页的路由类似这样/items/:id的话,你可以

watch: {
 '$route': function(){
   this.fetchData()
 }
},
methods: {
   fetchData () {
   
   }
}

官网例子

推荐问题
宣传栏