vue单页开发父子组件传值思路详解


Posted in Javascript onMay 18, 2018

vue单页开发时经常需要父子组件之间传值,自己用过但是不是很熟练,这里我抽空整理了一下思路,写写自己的总结。

GitHub地址:https://github.com/leileibrother/wechat-vue

文件目录如下图,example.vue是父组件,exampleChild.vue是子组件。

vue单页开发父子组件传值思路详解

父组件引入子组件,父组件html的代码如下:

<template> 
 <div> 
  <h3>这是父组件</h3> 
  <p style="margin: 20px 0;text-align: center;"> 
   <span>子组件传过来的值是 “{{childValue}}”</span> 
  </p> 
  <example-child v-bind:message="parentMsg" @getChildValue="getValue"></example-child> 
 </div> 
</template> 
<script> 
 import exampleChild from './examplechild.vue'; 
 export default { 
  name: "example.vue", 
  components: { 
   exampleChild 
  }, 
  data(){ 
   return { 
    parentMsg:'hello', 
    childValue:'' 
   } 
  }, 
  mounted(){ 
  }, 
  methods: { 
   getValue:function (val) { 
    this.childValue = val; 
   } 
  } 
 } 
</script> 
<style scoped> 
</style>

子组件代码如下:

<template> 
 <div> 
  <p style="margin: 20px 0;text-align: center;">我是子组件,父组件穿传过来的值是{{message}}</p> 
  <p style="margin: 20px 0;text-align: center;"> 
   <button @click="send">点击向父组件传值</button> 
  </p> 
 </div> 
</template> 
<script> 
 export default { 
  name: "exampleChild.vue", 
  props:['message'], 
  data(){ 
   return { 
   } 
  }, 
  mounted(){ 
  }, 
  methods: { 
   send:function () { 
    this.$emit('getChildValue','你好父组件!') 
   } 
  } 
 } 
</script> 
<style scoped> 
</style>

1,父组件向子组件传值。

在父组件中使用v-bind来绑定数据传给子组件,如我写的v-bind:message="parentMsg",把message字段传给子组件,

vue单页开发父子组件传值思路详解

在子组件中使用props接收值,如props:['message'],接收父组件传过来的message字段,使用{{message}}就是可以使用父组件传过来的值了。

vue单页开发父子组件传值思路详解

2,子组件向父组件传值。

子向父传值需要一个“中转站”,如我写的getChildValue,命名随便写。

在子组件中使用$emit()来向父组件传值。第一个参数就是这个“中转站”,后面的参数是要传的值,可以是多个。

vue单页开发父子组件传值思路详解

在父组件中如下,也需要这个中转站来接收值

vue单页开发父子组件传值思路详解

getValue是接收子组件值的函数,参数val就是子组件传过来的值,这样就可以接收到子组件传过来的值了。

vue单页开发父子组件传值思路详解

总结

以上所述是小编给大家介绍的vue单页开发父子组件传值思路详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
修改发贴的编辑功能
Mar 07 Javascript
javascript中的107个基础知识收集整理 推荐
Mar 29 Javascript
javascript 在firebug调试时用console.log的方法
May 10 Javascript
javascript学习笔记(九) js对象 设计模式
Jun 19 Javascript
javascript实现的图片切割多块效果实例
May 07 Javascript
纯HTML5制作围住神经猫游戏-附源码下载
Aug 23 Javascript
浅谈Node.js轻量级Web框架Express4.x使用指南
May 03 Javascript
在Vuex使用dispatch和commit来调用mutations的区别详解
Sep 18 Javascript
js实现按钮开关单机下拉菜单效果
Nov 22 Javascript
js获取对象,数组所有属性键值(key)和对应值(value)的方法示例
Jun 19 Javascript
基于js实现逐步显示文字输出代码实例
Apr 02 Javascript
如何在vue中使用jointjs过程解析
May 29 Javascript
Node.js Buffer用法解读
May 18 #Javascript
从零开始搭建webpack+react开发环境的详细步骤
May 18 #Javascript
Bootstrap table中toolbar新增条件查询及refresh参数使用方法
May 18 #Javascript
webpack4 css打包压缩问题的解决
May 18 #Javascript
微信小程序实现长按删除图片的示例
May 18 #Javascript
解决Vue中mounted钩子函数获取节点高度出错问题
May 18 #Javascript
Vue数据双向绑定原理及简单实现方法
May 18 #Javascript
You might like
关于手调机和数调机的选择
2021/03/02 无线电
PHP获取远程图片并保存到本地的方法
2015/05/12 PHP
PHP实现图片上传并压缩
2015/12/22 PHP
PHP下SSL加密解密、验证、签名方法(很简单)
2020/06/28 PHP
php登录超时检测功能实例详解
2017/03/21 PHP
ThinkPHP开发--使用七牛云储存
2017/09/14 PHP
php JWT在web端中的使用方法教程
2018/09/06 PHP
学习ExtJS Panel常用方法
2009/10/07 Javascript
jquery下为Event handler传递动态参数的代码
2011/01/06 Javascript
jquery动画2.元素坐标动画效果(创建一个图片走廊)
2012/08/24 Javascript
js中AppendChild与insertBefore的用法详细解析
2013/12/16 Javascript
Svg.js实例教程及使用手册详解(一)
2016/05/16 Javascript
使用JS中的exec()方法构造正则表达式验证
2016/08/01 Javascript
JS 实现可停顿的垂直滚动实例代码
2016/11/23 Javascript
js实现交通灯效果
2017/01/13 Javascript
微信小程序开发之麦克风动画 帧动画 放大 淡出
2017/04/18 Javascript
微信小程序 input输入及动态设置按钮的实现
2017/10/27 Javascript
JavaScript实现全选取消效果
2017/12/14 Javascript
Vue单页面应用保证F5强刷不清空数据的解决方案
2018/01/31 Javascript
微信小程序input框中加入小图标的实现方法
2018/06/19 Javascript
JavaScript 高性能数组去重的方法
2018/09/20 Javascript
Js 利用正则表达式和replace函数获取string中所有被匹配到的文本(推荐)
2018/10/28 Javascript
js实现圆形菜单选择器
2020/12/03 Javascript
[00:12]DAC2018 no[o]ne亮相SOLO赛 他是否如他的id一样无人可挡?
2018/04/06 DOTA
Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)
2008/09/06 Python
详解Python中 sys.argv[]的用法简明解释
2017/12/20 Python
对python判断ip是否可达的实例详解
2019/01/31 Python
pycharm修改file type方式
2019/11/19 Python
美国婴童服装市场上的领先品牌:Carter’s
2018/02/08 全球购物
美国伴娘礼服商店:Evening Collective
2019/10/07 全球购物
初中物理教学反思
2014/01/14 职场文书
九年级体育教学反思
2014/01/23 职场文书
2014年学校团委工作总结
2014/12/20 职场文书
让子弹飞观后感
2015/06/11 职场文书
车间班组长竞聘书
2015/09/15 职场文书
win11怎么消除图标小盾牌?win11消除图标小盾牌解决方法
2022/08/05 数码科技