组件自定义事件
1.作为一种,子组件===>父组件 的组件间通信方式;
2.使用场景:父组件中需要给子组件绑定自定义事件,并且事件的回调需要在父组件中;
3.绑定:
1.在父组件中:<Demo @CustomCaseName = "test" / > 或 <Demo v-on:CustomCaseName = "test" / >
2.在父组件中定义:
3.如果需求自定义事件只能触发一次,可以使用once修饰符,或$once方法;
4.触发自定义事件:this.$emit("CustomCaseName",需要传递的数据);
5.解绑自定义事件:this.off("CustomCaseName");
6.组件上绑定原生DOM事件,需要加上native修饰符,否则即使是原生DOM事件名(例如click)也会被当作自定义事件绑定;
7.值得注意的是,通过this.$refs.xxx.$on("CustomCaseName",回调)绑定自定义事件时,为了保证this的指向父组件,需要在methods中设置回调,直接$on中配置回调时,必须使用箭头函数。