vue中监听路由参数的变化及方法


Posted in Javascript onDecember 06, 2019

在vue项目中,假使我们在同一个路由下,只是改变路由后面的参数值,期望达到数据的更新。

mounted: () =>{
   this.id = this.$route.query.id;
   this.getdetail()
}

getDetail()方法中会用到this.id这个参数,在同一页面切换id的值,并不会触发vue的声明周期函数。

可以添加路由监听:

watch: {
  $route: {
     handler() {
       this.id = this.$route.query.id;
       this.getDetail();
       //深度监听,同时也可监听到param参数变化
    },
    deep: true,
  }
 }

ps:下面看下vue中监听路由参数变化的方法

在vue项目中,假使我们在同一个路由下,只是改变路由后面的参数值,如果不监听路由参数值的变化,页面无数据刷新,需手动刷新浏览器,这样做就不是我们的预期效果。

举例:当前路由为  /pjthome?pjtid=123456

mounted: function () {
   this.pjtid = this.$route.query.pjtid
   this.pjtdetail()
},

在页面pjtdetail()方法中,需要用到pjtid这个参数,假如在同一页面有相似项目切换,只是pjtid发生变化,在切换时,并未重新加载数据,原因是跟vue的生命周期有关,具体该解决这个问题,添加路由监听即可。

exp:

watch: {
   $route(){
    this.pjtid = this.$route.query.pjtid
   },
   pjtid() {
    this.pjtdetail()
   },
}

解决。

总结

以上所述是小编给大家介绍的vue中监听路由参数的变化及方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
jquery异步循环获取功能实现代码
Sep 19 Javascript
JS可以控制样式的名称写法一览
Jan 16 Javascript
javascript中为某个元素指定事件的三种方式
Aug 07 Javascript
Js使用WScript.Shell对象执行.bat文件和cmd命令
Dec 18 Javascript
bootstrap table 服务器端分页例子分享
Feb 10 Javascript
整理Javascript数组学习笔记
Nov 29 Javascript
使用jQuery制作Web页面遮罩层插件的实例教程
May 26 Javascript
Javascript中click与blur事件的顺序详析
Apr 25 Javascript
基于react组件之间的参数传递(详解)
Sep 05 Javascript
使用vue点击li,获取当前点击li父辈元素的属性值方法
Sep 12 Javascript
用element的upload组件实现多图片上传和压缩的示例代码
Feb 12 Javascript
JavaScript箭头函数中的this详解
Jun 19 Javascript
详解ECMAScript2019/ES10新属性
Dec 06 #Javascript
ES6的异步操作之promise用法和async函数的具体使用
Dec 06 #Javascript
原生JavaScript实现滑动拖动验证的示例代码
Dec 06 #Javascript
微信小程序 自定义弹窗实现过程(附代码)
Dec 05 #Javascript
Nuxt v-bind绑定img src不显示的解决
Dec 05 #Javascript
微信小程序swiper左右扩展各显示一半代码实例
Dec 05 #Javascript
微信小程序顶部导航栏可滑动并选中放大
Dec 05 #Javascript
You might like
PHP 面向对象程序设计(oop)学习笔记 (二) - 静态变量的属性和方法及延迟绑定
2014/06/12 PHP
php异常处理方法实例汇总
2015/06/24 PHP
javascript 四则运算精度修正函数代码
2010/05/31 Javascript
JS Range HTML文档/文字内容选中、库及应用介绍
2011/05/12 Javascript
在JavaScript里嵌入大量字符串常量的实现方法
2013/07/07 Javascript
对frameset、frame、iframe的js操作示例代码
2013/08/16 Javascript
jquery按回车提交数据的代码示例
2013/11/05 Javascript
js调试系列 控制台命令行API使用方法
2014/06/18 Javascript
jQuery常用操作方法及常用函数总结
2014/06/19 Javascript
了解Javascript的模块化开发
2015/03/02 Javascript
JavaScript继承模式粗探
2016/01/12 Javascript
jquery 判断是否支持Placeholder属性的方法
2017/02/07 Javascript
微信小程序url与token设置详解
2017/09/26 Javascript
使用Bootstrap和Vue实现用户信息的编辑删除功能
2017/10/25 Javascript
Vue中对比scoped css和css module的区别
2018/05/17 Javascript
详解webpack2异步加载套路
2018/09/14 Javascript
Puppet的一些技巧
2018/09/17 Javascript
使用taro开发微信小程序遇到的坑总结
2019/04/08 Javascript
解决ie11 SCRIPT5011:不能执行已释放Script的代码问题
2019/05/05 Javascript
[01:24:51]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS NewBee第二场
2014/05/26 DOTA
[01:03:18]DOTA2-DPC中国联赛 正赛 RNG vs Dynasty BO3 第一场 1月29日
2021/03/11 DOTA
django 实现celery动态设置周期任务执行时间
2019/11/19 Python
Python正则表达式急速入门(小结)
2019/12/16 Python
python 通过文件夹导入包的操作
2020/06/01 Python
解决python cv2.imread 读取中文路径的图片返回为None的问题
2020/06/02 Python
python基于socket模拟实现ssh远程执行命令
2020/12/05 Python
使用HTML5 Canvas为图片填充颜色和纹理的教程
2016/03/21 HTML / CSS
加拿大时尚少女服装品牌:Garage
2016/10/10 全球购物
THE OUTNET美国官网:国际设计师品牌折扣网站
2017/03/07 全球购物
曼城官方网上商店:Manchester City
2019/09/10 全球购物
泰海淘:泰国king Power王权免税集团旗下跨境海淘综合型电商
2020/07/26 全球购物
资生堂英国官网:Shiseido英国
2020/12/30 全球购物
一年级家长会邀请函
2014/01/25 职场文书
升旗仪式主持词
2014/03/19 职场文书
起诉书范文
2015/05/20 职场文书
班主任工作总结范文
2015/08/13 职场文书