Vue 组件传值几种常用方法【总结】


Posted in Javascript onMay 28, 2018

使用vue也有很多年了,一直都没有整理一下相关知识,给大家总结下开发过程中所遇到的一些坑,主要给大家总结一下vue组件传值的几种常用方法:

1、通过路由带参数传值

   ① A组件通过query把id传给B组件         

this.$router.push({path:'/B',query:{id:1}})

  ② B组件接收 

this.$route.query.id

2、父组件向子组件传值

使用props向子组件传递数据

子组件部分:child.vue

<template>
  <div>
    <ul>
      <li v-for='(item,index) in nameList' :key='index'>{{item.name}}</li>
    </ul>
  </div>
</template>
<script>
export default {
  props:['nameList']
}
</script>

父组件部分:

<template>
  <div>
    <div>这是父组件</div>
    <child :name-list='names'></child>  
  </div>
</template>
<script>
import child from './child.vue'
export default {
  components:{
    child
  },
  data(){
    return{
      names:[
        {name:'柯南'},
        {name:'小兰'},
        {name:'工藤新一'}
      ]
    }
  }
}
</script>

3、子组件向父组件传值

    子组件主要通过事件向父组件传递数据:

    子组件部分:

<template>
  <div>
    <ul>
      <li v-for='(item,index) in nameList' :key='index'>{{item.name}}</li>
    </ul>
    <Button @click='toParent'>点击我</Button>
  </div>
</template>
<script>
export default {
  props:['nameList'],
  methods:{
    toParent(){
      this.$emit('emitData',123)
    }
  }
}
</script>

父组件部分:

<template>
  <div>
    <div>这是父组件</div>
    <child :name-list='names' @emitData='getData'></child>  
  </div>
</template>
<script>
import child from './child.vue'
export default {
  components:{
    child
  },
  data(){
    return{
      names:[
        {name:'柯南'},
        {name:'小兰'},
        {name:'工藤新一'}
      ]
    }
  },
  methods:{
    getData(data){
      console.log(data); //123
    }
  }
}
</script>

总结

以上所述是小编给大家介绍的Vue 组件传值几种常用方法【总结】,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
基于mootools插件实现遮罩层新手引导
May 24 Javascript
中文字符串截取的js函数代码
Apr 17 Javascript
用IE重起计算机或者关机的示例代码
Mar 10 Javascript
JavaScript中的prototype和constructor简明总结
Apr 05 Javascript
JS实现自动切换文字的导航效果代码
Aug 27 Javascript
详解js中class的多种函数封装方法
Jan 03 Javascript
jquery实现图片上传前本地预览
Apr 28 jQuery
详解nuxt路由鉴权(express模板)
Nov 21 Javascript
vue路由插件之vue-route
Jun 13 Javascript
微信小程序实现时间进度条功能
Nov 17 Javascript
Windows下安装 node 的版本控制工具 nvm
Feb 06 Javascript
vue输入框使用模糊搜索功能的实现代码
May 26 Javascript
讲解vue-router之命名路由和命名视图
May 28 #Javascript
微信小程序实现图片上传功能
May 28 #Javascript
微信小程序上传图片功能(附后端代码)
Jun 19 #Javascript
讲解vue-router之什么是编程式路由
May 28 #Javascript
讲解vue-router之什么是嵌套路由
May 28 #Javascript
微信小程序上传图片实例
May 28 #Javascript
讲解vue-router之什么是动态路由
May 28 #Javascript
You might like
无JS,完全php面向过程数据分页实现代码
2012/08/27 PHP
几个优化WordPress中JavaScript加载体验的插件介绍
2015/12/17 PHP
php处理复杂xml数据示例
2016/07/11 PHP
php获取手机端的号码以及ip地址实例代码
2018/09/12 PHP
php接口隔离原则实例分析
2019/11/11 PHP
由prototype_1.3.1进入javascript殿堂-类的初探
2006/11/06 Javascript
JavaScript 全角转半角部分
2009/10/28 Javascript
悄悄用脚本检查你访问过哪些网站的代码
2010/12/04 Javascript
jBox 2.3基于jquery的最新多功能对话框插件 常见使用问题解答
2011/11/10 Javascript
JS执行删除前的判断代码
2014/02/18 Javascript
Javascript获取当前时间函数和时间操作小结
2014/10/01 Javascript
JavaScript生成福利彩票双色球号码
2015/05/15 Javascript
Web Uploader文件上传插件使用详解
2016/05/10 Javascript
Javascript实现图片不间断滚动的代码
2016/06/22 Javascript
vue.js初学入门教程(2)
2016/11/07 Javascript
javascript表单正则应用
2017/02/04 Javascript
JavaScript获取URL参数的方法之一
2017/03/24 Javascript
React-Native中props具体使用详解
2017/09/04 Javascript
JS二分查找算法详解
2017/11/01 Javascript
详解JavaScript 为什么要有 Symbol 类型?
2019/04/03 Javascript
vue 项目 iOS WKWebView 加载
2019/04/17 Javascript
node解析修改nginx配置文件操作实例分析
2019/11/06 Javascript
vue-cli3使用mock数据的方法分析
2020/03/16 Javascript
js实现从右往左匀速显示图片(无缝轮播)
2020/06/29 Javascript
webpack5 联邦模块介绍详解
2020/07/08 Javascript
vue element-ui中table合计指定列求和实例
2020/11/02 Javascript
[01:09:50]VP vs Pain 2018国际邀请赛小组赛BO2 第二场
2018/08/20 DOTA
Python的CGIHTTPServer交互实现详解
2018/02/08 Python
英国网上购买门:Direct Doors
2018/06/07 全球购物
美国购买隐形眼镜网站:Lenses For Less
2020/07/05 全球购物
2014社区三八妇女节活动方案
2014/03/30 职场文书
乡镇综治宣传月活动总结
2014/07/02 职场文书
办理护照工作证明
2014/10/10 职场文书
员工试用期转正自我评价
2015/03/10 职场文书
公积金具结保证书
2015/05/11 职场文书
JavaScript实现音乐播放器
2022/08/14 Javascript