当前位置: 移动技术网 > IT编程>脚本编程>vue.js > vue2.x 父组件监听子组件事件并传回信息的方法

vue2.x 父组件监听子组件事件并传回信息的方法

2017年12月12日  | 移动技术网IT编程  | 我要评论

求购ic,开学第一课2018,mbc演艺大赏2016

本文介绍了vue2.x 父组件监听子组件事件并传回信息,分享给大家,希望此文章对各位有所帮助

利用vm.$emit

1、在父组件中引用子组件

<child @from-child-msg="listenchildmsg"></child >

2、子组件中使用$emit发送事件

this.$emit('from-child-msg', '这是子组件传递的消息');

demo

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="x-ua-compatible" content="ie=edge">
  <title>document</title>
  <style>
    * {
      padding: 0;
      margin: 0;
    }
    input, select {
      height: 30px;
    }
  </style>
</head>
<body>
  <div id="app">
    <child value="name" @msg-from-child="getmsgfromchild"></child>
  </div>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.2.6/vue.min.js"></script>
  <script>
    vue.component('child', {
      data: function () {
        return {
          val: this.value
        }
      },
      props: ['value'],
      methods: {
        handleclick () {
          this.$emit('msg-from-child', this.val)
        }
      },
      template: `
        <div><input type="text" v-model="val"><button type="button" @click="handleclick">确定</button></div>
      `
    })
    new vue ({
      el: '#app',
      data: {
        
      },
      methods: {
        getmsgfromchild (v) {
          alert('msg: ' + v)
        }
      }
    })
  </script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网