父组件里的input是自定义事件还是原生事件?

如果是自定义事件为什么可以拿到$event事件对象,如果是原生事件,原生事件可以这么用吗?

  <div id="example">
    <!-- 这里绑定的input是自定义事件还是原生事件? -->
    <blog-post 
      :message1="message1"
      @input="message1 = $event.target.value"     
    ></blog-post>                            
  </div>
<script>
Vue.component('blog-post', {
  props:['message1'],
  template: ` 
    <div>
      <input 
        :value="message1"
        @input="$emit('input',$event)" 
      >
      <p>{{message1}}</p>
    <div>
  `
})
var vm = new Vue({
  el:'#example',
  data: {
    message1:'123'
  },
})
阅读 2.3k
1 个回答

父组件里面的input事件是自定义事件,但是子组件中的input事件是原生事件,子组件中input事件发生的时候会调用$emit('input',$event)触发父组件中自定义的input事件,并把$event作为参数传递了过去。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题