Vue3提供了代码段的写法,即在template里面不需要写跟元素,可以直接写代码段。但是在代码段里面触发自定义事件。会报下面的警告。

我们在一个组件里面,如果有好多地方都需要触发自定义事件。想要知道当前触发了哪一个自定义事件。需要把当前组件的代码浏览完毕。如果不把当前组件的代码浏览完毕,就不知道触发了几个自定义事件。

vue3提供了一个配置项。emits。可以把当前组件所有的自定义事件全部声明在emits里面,这样当别人阅读你的代码的时候只需要查看emits就可以知道当前组件触发了多少自定义事件。就跟props一样。在里面写了多少个数据就知道了当前组件接受多少数据,比较清晰。

比如下面的代码,代表当前组件触发了四个自定义事件

  emits: ['on-cancel', 'on-delete', 'on-confirm', 'on-logistics'],

总结如下:

1. 在拥有根元素的组件中,触发自定义事件,有没有emits选项无所谓

2. 如果你的组件渲染的代码片段,vue3.0规范,需要在emits中申明你所触发的自定义事件

3. 提倡:你发了自定义事件,需要在emits选项申明下,代码可读性很高



 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐