Vue后退时组件数据缓存问题

A页面中有一个订单列表,点击列表中的订单可以前进到订单详情界面。 
在详情界面中,有一个表格显示订单内容,第一次进入详情界面的时候是可以正常显示的, 
但是如果浏览器后退,再点击另一个订单,那么这个订单详情页面中的表格就会包含上一个订单中的内容。 
初步猜测这是缓存策略的原因,于是在A页面在created中写了方法让A页面每次create的时候就会刷新一次,这个时候就能正常工作了。 
但是这样做的缺点是每次进入这个页面都要刷新。请问大家有什么好的解决方法吗?

慕莱坞森
浏览 569回答 2
2回答

素胚勾勒不出你

详情页的做法一般是: 使用keep-alive, 配合activated, deactivated生命周期函数

慕的地8271018

有组件重载和组件不重载仅数据重载两种方法。组件重载可以在普通的生命周期里做,也就是刷新了页面,keep-alive组件就在相应的事件里做。不只需要组件重新的可以在路由里做。其实不管是在路由层面、组件的生命周期或事件里都要重新加载数据。至于怎么实现其实也得考符合个产品的用户体验要求。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Vue.js