首页 > 其他 > 详细

VUE 组件间通信

时间:2019-01-15 17:33:36      阅读:141      评论:0      收藏:0      [点我收藏+]
  1. 父传子
// 父组件
<note-address :data="msg"></note-address> 

//子组件

<div>{{ data.partment }}</div>

export default {
  //props:[‘data‘]
  props: {
    data: Object
  }
}
  1. 子传父
//父组件
<note-address @new="addNote"></note-address> 

//子组件
<button type="small" class="confirm" @click="add">设为教案</button>

methods: {
 add () {
  this.$emit(‘new‘, false)
 }
}
  1. 兄弟相传
1.创建 公共bus.js

//bus.js
import Vue from ‘vue‘
export default new Vue()

2.父组件注册两个子组件
components:{
    firstChild,
    secondChild
}

3.firstChild组件

<input type="button" value="点击触发" @click="elementByValue">

<script>
// 引入公共的bug,来做为中间传达的工具
  import Bus from ‘./bus.js‘
  export default {
      methods: {
      elementByValue: function () {
        Bus.$emit(‘val‘, ‘兄弟,收到了吗?‘)
      }
    }
  }
</script>

4.secondChild组件

<span>{{msg}}</span>

<script>
// 引入公共的bug,来做为中间传达的工具
  import Bus from ‘./bus.js‘
  export default {
      mounted(){
            let self = this;
            Bus.$on(‘val‘, function (msg) {
                console.log(msg)
                self.msg = msg
            })
      }
    }
  }
</script>

VUE 组件间通信

原文:https://www.cnblogs.com/yaotu/p/10273109.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!