Vue2.0组件间数据传递示例


Posted in Javascript onMarch 07, 2017

Vue1.0组件间传递

  • 使用$on()监听事件;
  • 使用$emit()在它上面触发事件;
  • 使用$dispatch()派发事件,事件沿着父链冒泡;
  • 使用$broadcast()广播事件,事件向下传导给所有的后代

Vue2.0后$dispatch(),$broadcast()被弃用,见https://cn.vuejs.org/v2/guide/migration.html#dispatch-和-broadcast-替换

1,父组件向子组件传递场景:Father上一个输入框,根据输入传递到Child组件上。

父组件:

<template>
 <div>
  <input type="text" v-model="msg">
  <br>
  //将子控件属性inputValue与父组件msg属性绑定
  <child :inputValue="msg"></child>
 </div>
</template>
<style>

</style>
<script>
 export default{
  data(){
   return {
    msg: '请输入'
   }
  },
  components: {
   child: require('./Child.vue')
  }
 }
</script>

子组件:

<template>
 <div>
  <p>{{inputValue}}</p>
 </div>
</template>
<style>

</style>
<script>
  export default{
    props: {
     inputValue: String
    }
  }
</script>

2,子组件向父组件传值场景:子组件上输入框,输入值改变后父组件监听到,弹出弹框

 父组件:

<template>
 <div>
//message为子控件上绑定的通知;recieveMessage为父组件监听到后的方法
  <child2 v-on:message="recieveMessage"></child2>
 </div>
</template>
<script>
 import {Toast} from 'mint-ui'
 export default{
  components: {
   child2: require('./Child2.vue'),
   Toast
  },
  methods: {
   recieveMessage: function (text) {
    Toast('监听到子组件变化'+text);
   }
  }
 }
</script>

子组件:

<template>
 <div>
  <input type="text" v-model="msg" @change="onInput">
 </div>
</template>
<script>
 export default{
  data(){
   return {
    msg: '请输入值'
   }
  },
  methods: {
   onInput: function () {
    if (this.msg.trim()) {
     this.$emit('message', this.msg);
    }
   }
  }
 }
</script>

以上所述是小编给大家介绍的Vue2.0组件间数据传递,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
简洁短小的 JavaScript IE 浏览器判定代码
Mar 21 Javascript
FileUpload 控件 禁止手动输入或粘贴的实现代码
Apr 07 Javascript
让你的博文自动带上缩址的实现代码,方便发到微博客上
Dec 28 Javascript
用jQuery实现的智能隐藏、滑动效果的返回顶部代码
Mar 18 Javascript
jQuery右下角旋转环状菜单特效代码
Aug 10 Javascript
JavaScript中获取纯正的undefined的方法
Mar 06 Javascript
jQuery实现获取元素索引值index的方法
Sep 18 Javascript
jQueryUI 拖放排序遇到滚动条时有可能无法执行排序的小bug及解决方案
Dec 19 Javascript
div中文字内容溢出常见的解决方法
Mar 16 Javascript
200行HTML+JavaScript实现年会抽奖程序
Jan 22 Javascript
vue实现滑动超出指定距离回顶部功能
Jul 31 Javascript
kafka调试中遇到Connection to node -1 could not be established. Broker may not be available.
Sep 17 Javascript
js实现网页定位导航功能
Mar 07 #Javascript
Vuejs 组件——props数据传递的实例代码
Mar 07 #Javascript
js实现百度登录框鼠标拖拽效果
Mar 07 #Javascript
Vue获取DOM元素样式和样式更改示例
Mar 07 #Javascript
原生JavaScript实现Tooltip浮动提示框特效
Mar 07 #Javascript
基于JavaScript实现图片剪切效果
Mar 07 #Javascript
详解Vue2 无限级分类(添加,删除,修改)
Mar 07 #Javascript
You might like
星际争霸教主Flash的ID由来:你永远不会知道他之前的ID是www!
2019/01/18 星际争霸
php Smarty模板生成html文档的方法
2010/04/12 PHP
PHP小教程之实现链表
2014/06/09 PHP
php socket通信简单实现
2016/11/18 PHP
PHP实现正则表达式分组捕获操作示例
2018/02/03 PHP
php删除一个路径下的所有文件夹和文件的方法
2018/02/07 PHP
php workerman定时任务的实现代码
2018/12/23 PHP
深入学习微信网址链接解封的防封原理visit_type
2019/08/15 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
javascript计时器事件使用详解
2014/01/07 Javascript
JavaScript利用append添加元素报错的解决方法
2014/07/01 Javascript
JS面向对象基础讲解(工厂模式、构造函数模式、原型模式、混合模式、动态原型模式)
2014/08/16 Javascript
生成二维码方法汇总
2014/12/26 Javascript
jquery合并表格中相同文本的相邻单元格
2015/07/17 Javascript
Angular Module声明和获取重载实例代码
2016/09/14 Javascript
bootstrap时间控件daterangepicker使用方法及各种小bug修复
2017/10/25 Javascript
layer iframe 设置关闭按钮的方法
2019/09/12 Javascript
NestJs使用Mongoose对MongoDB操作的方法
2021/02/22 Javascript
[02:44]DOTA2英雄基础教程 钢背兽
2013/12/19 DOTA
[01:28:24]NAVI vs VG Supermajor 败者组 BO3 第三场 6.5
2018/06/06 DOTA
python实现复制整个目录的方法
2015/05/12 Python
python操作mysql数据库
2017/03/05 Python
python实现搜索文本文件内容脚本
2018/06/22 Python
Python任意字符串转16, 32, 64进制的方法
2019/06/12 Python
python中with语句结合上下文管理器操作详解
2019/12/19 Python
python自动化unittest yaml使用过程解析
2020/02/03 Python
美国和加拿大房车出售在线分类广告:RVT.com
2018/04/23 全球购物
应用心理学个人求职信范文
2013/12/11 职场文书
节约每一滴水演讲稿
2014/09/09 职场文书
房产转让协议书(2014版)
2014/09/30 职场文书
本科毕业论文致谢怎么写
2015/05/14 职场文书
红高粱观后感
2015/06/10 职场文书
MySQL之DML语言
2021/04/05 MySQL
Golang 链表的学习和使用
2022/04/19 Golang
分析SQL窗口函数之排名窗口函数
2022/04/21 Oracle
MySQL优化之慢日志查询
2022/06/10 MySQL