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 相关文章推荐
Gird事件机制初级读本
Mar 10 Javascript
js最简单的拖拽效果实现代码
Sep 24 Javascript
5秒后跳转效果(setInterval/SetTimeOut)
May 03 Javascript
js为数字添加逗号并格式化数字的代码
Aug 23 Javascript
禁止iframe页面的所有js脚本如alert及弹出窗口等
Sep 03 Javascript
JavaScript+html5 canvas实现本地截图教程
Apr 16 Javascript
浅析JS中对函数function的理解(基础篇)
Oct 14 Javascript
Angular.js初始化之ng-app的自动绑定与手动绑定详解
Jul 31 Javascript
原生JS封装animate运动框架的实例
Oct 12 Javascript
electron demo项目npm install安装失败的解决方法
Feb 06 Javascript
解决Layui中templet中a的onclick参数传递的问题
Sep 20 Javascript
Vue 打包体积优化方案小结
May 20 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
php下HTTP Response中的Chunked编码实现方法
2008/11/19 PHP
PHP反射类ReflectionClass和ReflectionObject的使用方法
2013/11/13 PHP
百度地图API使用方法详解
2015/08/25 PHP
php使用curl实现ftp文件下载功能
2017/05/16 PHP
JScript 脚本实现文件下载 一般用于下载木马
2009/10/29 Javascript
Javascript学习笔记1 数据类型
2010/01/11 Javascript
js过滤HTML标签以及空格的思路及代码
2013/05/24 Javascript
js模仿jquery的写法示例代码
2013/06/16 Javascript
PHP开发者必须掌握的6个关键字
2014/04/14 Javascript
js图片预加载示例
2014/04/30 Javascript
使用documentElement正确取得当前可见区域的大小
2014/07/25 Javascript
javascript获取flash版本号的方法
2014/11/20 Javascript
js实现简单的可切换选项卡效果
2015/04/10 Javascript
javascript常用的方法分享
2015/07/01 Javascript
node.js使用cluster实现多进程
2016/03/17 Javascript
jQuery改变form表单的action,并进行提交的实现代码
2016/05/25 Javascript
JS获取日期的方法实例【昨天,今天,明天,前n天,后n天的日期】
2017/09/28 Javascript
JS实现DOM删除节点操作示例
2018/04/04 Javascript
详解vue-cli+element-ui树形表格(多级表格折腾小计)
2019/04/17 Javascript
泛谈JS逻辑判断选择器 || &amp;&amp;
2019/05/24 Javascript
用smtplib和email封装python发送邮件模块类分享
2014/02/17 Python
完美解决Python2操作中文名文件乱码的问题
2017/01/04 Python
python抓取京东小米8手机配置信息
2018/11/13 Python
使用Python实现微信提醒备忘录功能
2018/12/04 Python
Python获取航线信息并且制作成图的讲解
2019/01/03 Python
python粘包问题及socket套接字编程详解
2019/06/29 Python
python getpass实现密文实例详解
2019/09/24 Python
德国PC硬件网站:CASEKING
2016/10/20 全球购物
国际旅客访问北美最大的汽车租赁提供商:Alamo Rent A Car
2018/06/13 全球购物
群众路线个人对照检查材料
2014/09/23 职场文书
教师三严三实对照检查材料
2014/09/25 职场文书
领导干部作风建设工作总结
2014/10/23 职场文书
党员干部作风建设思想汇报范文
2014/10/25 职场文书
2015年治庸问责工作总结
2015/07/27 职场文书
婚礼答谢词范文
2015/09/29 职场文书
2019年大学生职业生涯规划书
2019/03/25 职场文书