组件可以显式地通过 emits 选项来声明它要触发的事件:
<script>export default {emits:['increaseBy'],}
</script>
这个 emits 选项和 defineEmits() 宏还支持对象语法。通过 TypeScript 为参数指定类型,它允许我们对触发事件的参数进行验证,这种公司项目中没出现过:
export default {emits: {submit(payload: { email: string, password: string }) {// 通过返回值为 `true` 还是为 `false` 来判断// 验证是否通过}}
}
注意如果一个原生事件的名字 (例如 click) 被定义在 emits 选项中,则监听器只会监听组件触发的 click 事件而不会再响应原生的 click 事件。