Vue跳转到新页面再返回到旧页面保持状态不变的问题
作者:zhaocarbon
这篇文章主要介绍了Vue跳转到新页面再返回到旧页面保持状态不变的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
Vue跳转到新页面再返回到旧页面保持状态不变
新项目中遇到了A页面跳转到B页面用户填写并收集数据相关数据成功返回到A页面时,A页面被重置刷新,所有已经填写的其他数据均没了的问题,为了解决这个问题,我们不得不使用以下方案解决问题:
页面路由如下:
- A页面:path: '/project/add',
- B页面:path: '/project/researchGroup',
解决方案:使用keep-alive
1.在vue.app中添加keep-alive标签
<template> <div id="app"> <keep-alive> <router-view v-if="$route.meta.keepAlive" /> </keep-alive> <router-view v-if="!$route.meta.keepAlive" /> </div> </template> <script> export default { name: 'App' } </script>
2.在router文件下的index.js中添加meta节点并新增keepAlive:true
3.在B页面中添加
搞定!!飞起!!
当然因为B页面有可能还有其他子级页面等,根据根据相应的逻辑完善这块儿的逻辑即可!
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。