Vue--关于点击当前路由,视图无法更新的解决方案
2017-07-12 15:53
676 查看
转自:https://juejin.im/post/593121aa0ce4630057f70d35
问题的根源: 用户点击当前高亮的路由并不会刷新view,因为vue-router会拦截你的路由,它判断你的url并没有任何变化,所以它不会触发任何钩子或者是view的变化(这是vue设计的一个原则:一切都是从路由出发的)
现实: 点击当前路由,改变视图是很多开发人员的“硬需求”
解决方案:
弊端:url 后面有一个很难看的 query 后缀如
问题的根源: 用户点击当前高亮的路由并不会刷新view,因为vue-router会拦截你的路由,它判断你的url并没有任何变化,所以它不会触发任何钩子或者是view的变化(这是vue设计的一个原则:一切都是从路由出发的)
现实: 点击当前路由,改变视图是很多开发人员的“硬需求”
解决方案:
clickLink(path) { this.$router.push({ path, query: { t: +new Date() //保证每次点击路由的query项都是不一样的,确保会重新刷新view } }) }
弊端:url 后面有一个很难看的 query 后缀如
xxx.com/article/list?t=1496832345025
相关文章推荐
- 关于在VS2005环境下无法从源视图切换到设计视图的解决方案
- 20061021个人日志(关于在VS2005环境下无法从源视图切换到设计视图的解决方案)
- 关于在VS2005环境下无法从源视图切换到设计视图的解决方案(转)
- Vue-- 监听路由变化,数据无法更新?
- 关于跳转到空白页面进行新浪微博分享,当点击取消保存到草稿时无法监听,返回空白页问题的解决方案
- 关于在VS2005环境下无法从源视图切换到设计视图的解决方案
- ViewPager中使用FragmentPagerAdapter.notifyDataSetChanged无法更新当前Fragment解决方案
- 关于在VS2005环境下无法从源视图切换到设计视图的解决方案
- android webview 加载重定向页面时点击无法回退,导致重复加载当前页面问题的解决方案
- vue数组中数据变化但是视图没有更新解决方案
- 20061021个人日志(关于在VS2005环境下无法从源视图切换到设计视图的解决方案)
- 关于在VS2005环境下无法从源视图切换到设计视图的解决方案
- 关于sencha touch在华为、红米等部分手机下hide事件失效,msgbox无法关闭的解决方案(已更新最新解决方案)
- 关于Ubuntu更新后无法开机的解决方案
- 关于在VS2005环境下无法从源视图切换到设计视图的解决方案
- 关于sencha touch在华为、红米等部分手机下hide事件失效,msgbox无法关闭的解决方案(已更新最新解决方案)
- 关于目前SDK更新慢,或者无法更新的解决方案
- 关于UGUI挡道3D的物体触发点击事件无法和3D物体分离的解决方案
- iOS 子视图超出父视图范围 无法响应点击事件解决方案
- angularjs中关于当前路由再次点击强制刷新