vue切换路由不重新渲染_vue中共用一个页面只是路由参数的变化的单页面重新渲染...

遇到问题的需求是:一个列表有好多层,但是列表都长得一样只是对应的不同的层级,所以共用了一个单页面,只是路由上的params的ID在进行变化

问题是:路由变化了,但是页面并没有重新渲染。

刚开始想到的解决方法是在标签上加 :key="Math.random()",但是没有什么效果,跟同事商量了半天也解不了惑,这个属性只在elementUI的table表格上使用过。

第二种,记得vue-router中这个标签上可以添加key属性,即

$route.fullPath完成解析后的 URL,包含查询参数和 hash 的完整路径

只要url进行变化就会重新渲染,但是基于这个页面是后来新增加的,添加全局的这个属性会有所影响,所以抛弃了这一种方法

第三种,在vue-router的官网上看到了数据获取---导航完成后获取数据,通过watch进行监听$route

具体代码实现:

watch: {

// 如果路由有变化,会再次执行该方法

'$route': 'fetchData'

}, methods: {

//fetchData 可以接受两个参数newVal, oldVal

fetchData (newVal, oldVal) { //进行获取数据的操作

}

}

复制代码

第一次写文章,记录自己日常的bug,望大家多多包涵,多多提提意见

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值