VUE组件通信

父子通信

html

<script src="https://unpkg.com/vue"></script>

<div id="app">
  <p>{{ message }}</p>
  <button @click="ccc = true">打开</button>
  <child v-show='ccc' @close="ccc=false"></child>
</div>

js

Vue.component('child',{
template:`
<div>我是儿子<button @click="$emit('close')">关闭</button></div>
`
})
new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue.js!',
    ccc:false
  }
})

儿子没有办法自己关闭自己,需要告诉父亲,由父亲进行关闭。

兄弟通信

查看CSDN博客
博客2

爷孙通信

vue的爷孙通信特别麻烦,所以有了vuex。

孙子没有冒泡
不存在的,只能父子通信,如果你想爷孙通信,就传递事件吧,一层一层的传上来。

<script src="https://unpkg.com/vue"></script>

<div id="app">
  <p>{{ message }}</p>
  <button @click="ccc = true">打开</button>
  <child :visiable="ccc" @close="ccc=false"></child>
</div>
Vue.component('child',{
  props:['visiable'],
template:`
<div v-show="visiable" @click="$emit('close')">我是老二<sunzi></div>

`
})
Vue.component('sunzi',{
  template:`
<div>我是老三<button @click="$emit('close')">关闭</button></div>
`
})
new Vue({
  el: '#app',
  data: {
    message: '我是老大',
    ccc:false
  }
})
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 兄弟通信 看了官网的教程,我认为兄弟通信是其他组件通信的基础,只要掌握好兄弟通信,其他两种也很容易掌握。首先来看官...
    凤凰东南飞阅读 1,013评论 2 1
  • 父子组件间的通信 父亲需要怎么控制儿子的显示和隐藏 总结一下 父亲控制自己的子组件的显示 父亲通过v-bind:c...
    海山城阅读 634评论 0 0
  • 前言 本文主要说明Vue的核心内容---组件间的通信。文中将使用几个栗子来了解,本文示例基于Vue2.0。 父子组...
    yimi珊阅读 1,412评论 0 2
  • 组件通信各种情况总结VUE是以数据驱动的MVVM框架,又是模块化开发,所以各个组件间的通信传递数据非常重要,在项目...
    流年_338f阅读 591评论 0 2
  • 所谓梦想,不过是行走在自己最渴望的那条路上。
    初修阅读 220评论 1 2