keep-alive更新数据
时间: 2023-11-04 21:52:23 浏览: 43
在使用 keep-alive 组件时,如果需要更新数据,可以将需要更新的数据写在 activated 钩子函数中。activated 钩子函数会在 keep-alive 组件激活时调用,并且在服务器端渲染期间不会被调用。你可以在 activated 钩子函数中将上一个页面跳转的路由参数赋值给需要更新的数据。例如:
```javascript
data() {
return {
data: ''
}
},
activated() {
// 将上一个页面跳转的路由的参数赋值给 data
this.data = this.$route.query.id
}
```
这样,在每次页面被缓存后再次激活时,activated 钩子函数会被调用,从而更新数据。\[1\]\[2\]
#### 引用[.reference_title]
- *1* [关于被 keep-alive 缓存的组件不能更新数据的问题](https://blog.csdn.net/weixin_44939142/article/details/107071177)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* *3* [keep-alive](https://blog.csdn.net/Zhoujia1316/article/details/117449542)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]