思路一:【有数据请求】
1、从当前页面跳转到下一页时携带参数,(也可以把参
数暂存到vuex中)
2、从下一页返回到当前页面时再把参数传回来
示例说明:
比如我们现在有两个页面:
- 列表页List.vue
- 详情页:Detail.vue
从List页面跳转到Detail,再从Detail返回List, 如果不刷新,则需要在跳转到Detail时将List的pageNo记录一下,
然后再返回到List时判断是否有pageNo,如果有则加载pageNo的数据,如果没有则默认显示第一页的数据
该方法虽能解决问题,但返回后会有请求服务的情况,这时就要评估是否在具体业务上可行了。
思路二:
借助keep-alive和activated
示例说明:
还拿上面的例子来说明:
1、在router中给List添加 `meta: { keepAlive: true, isBack: false}`
2、router-view添加判断参数v-if="$route.meta.keppAlive"
3、在List页面重写beforRouterEnter和activated方法
该方法主要是参考这篇网文,作者提供的思路挺好的,有兴趣的可以看看。