当前位置: 首页 > Web前端 > vue.js

keep-alive记住了当前页面,导致离开该页面后,再次进入该页,页面没有刷新

时间:2023-03-31 20:16:38 vue.js

keep-alive会记住当前页面,所以离开页面后再次进入页面,页面不会刷新进入订单详情页面从订单列表中获取订单详情,返回订单列表页面并记住的位置进入前的订单列表,但此时再次输入另一个订单的订单明细,确实打开了之前的订单明细的内容。问题原因:这是因为离开详情页后页面没有重新加载或刷新。解决方法:在订单列表页面的方法中定义一个init函数,分别在mounted和activated中调用,从其他页面进入该页面时刷新订单列表页面。mounted(){//仅在初始化期间执行this.init();this.doRefresh()},activated(){//每次调用都执行this.init()},methods:{init(){//做初始化操作},},beforeRouteEnter(to,from,next){//从店铺销售进入订单列表时,页面必须刷新next(vm=>{if(from.path==='/list'){vm.doRefresh();}})},这样就解决了问题!