AutoCAD 3DMAX C语言 Pro/E UG JAVA编程 PHP编程 Maya动画 Matlab应用 Android
Photoshop Word Excel flash VB编程 VC编程 Coreldraw SolidWorks A Designer Unity3D
 首页 > JavaScript

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

51自学网 http://www.wanshiok.com
vue,组件传递数据,vue2.0组件数据传递,vue组件间的数据传递

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组件间数据传递,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对wanshiok.com网站的支持!


vue,组件传递数据,vue2.0组件数据传递,vue组件间的数据传递  
上一篇:完美实现js焦点轮播效果(一)  下一篇:js实现网页定位导航功能