Vue组件之实现自定义事件

Posted tangzhi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue组件之实现自定义事件相关的知识,希望对你有一定的参考价值。

自定义事件本质是由子组件向父组件传递信息

1、子组件,触发click点击事件时,通过$emit(...)触发父组件里自定义的事件defclick

<template>
    <div role="alert" :class="[‘el-alert‘,changeAlert,‘is-center‘,‘is-light‘]">
        <i :class="[‘el-alert__icon‘,changeIcon]"></i>
        <div class="el-alert__content">
            <slot name="title">
                <span class="el-alert__title">{{title}}</span>
            </slot>
            <i class="el-alert__closebtn el-icon-close" @click="clickHandle"></i>
        </div>
    </div>
</template>

<script>
export default {
    methods:{
        clickHandle(){
            this.$emit(defclick);
        }
    }
}
</script>

2、父组件,定义自定义事件defclick对应的处理函数,接收来自子组件的信息

<template>
  <div id="app">
    <alert type="success" title="这是一段成功提示的信息" @defclick=‘clickHandle‘ />
    <alert @defclick="clickHandle" />
  </div>
</template>

<script>
import alert from @/components/alert//引入子组件

export default {
  name: App,
  components: {//注册
    alert
  },
  methods: {
    clickHandle() {
      console.log(test)
    }
  }
}
</script>

 

以上是关于Vue组件之实现自定义事件的主要内容,如果未能解决你的问题,请参考以下文章

vue之props和自定义事件的驼峰命名

vue创建自定义组件并监听原生事件

Vue之彻底理解自定义组件的v-model

Vue组件之全局组件与局部组件

Vue组件之全局组件与局部组件

记一次vue中自定义组件native的坑