有没有一种方法可以在 vue 3 Options API 中输入与 Composition API 类似的发射? 根据组合方式(文档):
<script setup lang="ts"> // type-based const emit = defineEmits<{ (e: 'change', id: number): void (e: 'update', value: string): void }>() </script>
但是对于选项 API,我们只有有效负载验证(文档):
emits: { addBook(payload: { bookName: string }) { // perform runtime validation return payload.bookName.length > 0 } }
因此,如果我们不需要验证,eslint 会将参数视为未使用:
emits: { change: (id: number) => true // 'id' is defined but never used }
添加忽略注释来消除警告:
或者对
id
进行简单的验证: