vue跳转同一个组件,参数不同,页面接收值只接收一次的解决方法


Posted in Javascript onNovember 05, 2019

作为vue的初用者,你可能会像我一样遇到一个问题,对跳转组件是,我们想通过参数不同,调用不同的方法。

例如:

app.vue

<ul>
      <li class="navList" v-for="index in goods" :key="index.name">
       <router-link :to="{path:index.link,query:{type:index.name}}" >
        {{index.name}}
       </router-link>
      </li>
   </ul>

app…vue中的data数据:

goods:[
  {name:'女装',link:'goods'},
  {name:'男装',link:'goods'},
  ]

在goods.vue中接受数据

mounted(){
  this.stri=this.$route.query.type;
 }

当我循环输出这些链接,每个链接的地址都是一样的。参数不一样,当我们点击我们的按钮时

vue跳转同一个组件,参数不同,页面接收值只接收一次的解决方法

我们只会看到导航栏中的参数在变化,然而我们页面中的数并没有变化。这是为什么呢?

相信很多朋友也已经知道了,这是因为跳转同一个组件,这个组件在第一次,会执行组件的生命周期中的步骤,但是第二次再跳转该组件的时候,组件会被重用,所以不会再执行生命周期中的某些过程,同样mount也不会执行,也就是说,不会执行第二次赋值。

那我们应该怎么获取值呢?

这里有一个方法:

goods.vue

beforeRouteUpdate(to,from,next){
  this.stri=to.query.type;
  next();
 }

beforeRouteUpdate的作用就是监听在当前路由改变,但是该组件被复用时调用

这就是我们所需要的东西了。路由的地址变化了,组件也被复用了。

同样的我能还可以使用另一种监听路由变化的方法:

watch:{
  '$route'(to,from){
   this.stri=to.query.type
  }
 },

这个方法,和上面的beforeRouteUpdate起到一样的效果。

如果你遇到的问题,和我所遇到的一样,那么恭喜你,你也解决了这个问题。

以上这篇vue跳转同一个组件,参数不同,页面接收值只接收一次的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js面向对象设计用{}好还是function(){}好(构造函数)
Oct 23 Javascript
JS链式调用的实现方法
Mar 07 Javascript
js判断为空Null与字符串为空简写方法
Feb 24 Javascript
javascript处理表单示例(javascript提交表单)
Apr 28 Javascript
ExtJS4利根据登录后不同的角色分配不同的树形菜单
May 02 Javascript
js限制文本框只能输入数字方法小结
Jun 16 Javascript
通过JS来动态的修改url,实现对url的增删查改
Sep 01 Javascript
JS判断客服QQ号在线还是离线状态的方法
Jan 13 Javascript
前端框架Vue.js构建大型应用浅析
Sep 12 Javascript
JavaScript中数组slice和splice的对比小结
Sep 22 Javascript
整理关于Bootstrap模态弹出框的慕课笔记
Mar 29 Javascript
node.js连接mysql与基本用法示例
Jan 05 Javascript
vue Tab切换以及缓存页面处理的几种方式
Nov 05 #Javascript
vue动态路由:路由参数改变,视图不更新问题的解决
Nov 05 #Javascript
vue 解决路由只变化参数页面组件不更新问题
Nov 05 #Javascript
vue 实现路由跳转时更改页面title
Nov 05 #Javascript
Node.js开发之套接字(socket)编程入门示例
Nov 05 #Javascript
小程序识别身份证,银行卡,营业执照,驾照的实现
Nov 05 #Javascript
node.js域名解析实现方法详解
Nov 05 #Javascript
You might like
DIY实用性框形天线
2021/03/02 无线电
编写PHP的安全策略
2006/10/09 PHP
PHP中文分词的简单实现代码分享
2011/07/17 PHP
PHP计数器的实现代码
2013/06/08 PHP
php获取一定范围内取N个不重复的随机数
2016/05/28 PHP
BOOM vs RR BO5 第二场 2.14
2021/03/10 DOTA
iframe 自适应高度[在IE6 IE7 FF下测试通过]
2009/04/13 Javascript
Javascript Web Slider 焦点图示例源码
2013/10/10 Javascript
JS中把字符转成ASCII值的函数示例代码
2013/11/21 Javascript
js通过location.search来获取页面传来的参数
2014/09/11 Javascript
JavaScript 实现的 zip 压缩和解压缩工具包Zip.js使用详解
2015/12/14 Javascript
利用pm2部署多个node.js项目的配置教程
2017/10/22 Javascript
详解webpack中的hash、chunkhash、contenthash区别
2018/01/05 Javascript
如何检查一个对象是否为空
2019/04/11 Javascript
小程序Request的另类用法详解
2019/08/09 Javascript
vue中实现动态生成二维码的方法
2020/02/21 Javascript
微信小程序文章详情功能完整实例
2020/06/03 Javascript
javascript中正则表达式语法详解
2020/08/07 Javascript
Javascript中的奇葩知识,你知道吗?
2021/01/25 Javascript
使用Python获取Linux系统的各种信息
2014/07/10 Python
Python获取DLL和EXE文件版本号的方法
2015/03/10 Python
浅谈python的dataframe与series的创建方法
2018/11/12 Python
python引用(import)某个模块提示没找到对应模块的解决方法
2019/01/19 Python
Python时间差中seconds和total_seconds的区别详解
2019/12/26 Python
jupyter 实现notebook中显示完整的行和列
2020/04/09 Python
numpy 矩阵形状调整:拉伸、变成一位数组的实例
2020/06/18 Python
详解用Python调用百度地图正/逆地理编码API
2020/07/02 Python
html5指南-1.html5全局属性(html5 global attributes)深入理解
2013/01/07 HTML / CSS
天游软件面试
2013/11/23 面试题
初级Java程序员面试题
2016/03/03 面试题
YII2 全局异常处理深入讲解
2021/03/24 PHP
单位人事专员介绍信
2014/01/11 职场文书
班级寄语大全
2014/04/10 职场文书
乡镇党建工作汇报材料
2014/10/27 职场文书
北京导游词
2015/02/12 职场文书
寻找最美乡村教师观后感
2015/06/18 职场文书