• 欢迎光临~

vue-router同页面传参跳转不刷新,相同path不同query

开发技术 开发技术 2022-07-16 次浏览

vue项目在进行同页面路由跳转后,页面不刷新,或者只有部分刷新

解决办法

在 router-view 中加 :key="$route.fullPath"


<router-view :key="$route.fullPath"></router-view>

Vue 会复用相同组件, 即 /aaa/1 =>>> /aaa/2 或者 /bbb?id=1 =>>> /bbb?id=2 这类链接跳转时, 将不再执行created, mounted之类的钩子
设置 router-view 的 key 属性值为 $route.fullPath后,就会比较完整路径,path和参数都会进行比较,地址发生改变时(包括参数改变),就会重新渲染页面,组件被强制不复用, 相关钩子加载顺序为:
beforeRouteUpdate => created => mounted

程序员灯塔
转载请注明原文链接:vue-router同页面传参跳转不刷新,相同path不同query
喜欢 (0)