zoukankan      html  css  js  c++  java
  • vue

    通过$emit 实现通信

    上面两种示例主要都是父组件向子组件通信,而通过$emit 实现子组件向父组件通信。

    对于$emit官网上也是解释得很朦胧,我按我自己的理解是这样的:

    1
    vm.$emit( event, arg )

    $emit 绑定一个自定义事件event,当这个这个语句被执行到的时候,就会将参数arg传递给父组件,父组件通过@event监听并接收参数。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <template>
     <div>
     <h1>{{title}}</h1>
     <child @getMessage="showMsg"></child>
     </div>
    </template>
     
    <script>
     import Child from '../components/child.vue'
     export default {
     components: {Child},
     data(){
      return{
      title:''
      }
     },
     methods:{
      showMsg(title){
      this.title=title;
      }
     }
     }
    </script>
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <template>
     <h3>我是子组件!</h3>
    </template>
    <script>
     export default {
     mounted: function () {
      this.$emit('getMessage', '我是父组件!')
     }
     }
    </script>

    示例效果三

    https://www.jb51.net/article/140581.htm

  • 相关阅读:
    学习进度总结表
    关于软件工程的问题
    自我介绍
    web安全
    spring profile
    spring 装配
    python Descriptor (描述符)
    python string intern
    Java 对象内存占用
    java jdb命令详解
  • 原文地址:https://www.cnblogs.com/zzz7/p/15499454.html
Copyright © 2011-2022 走看看