0

Vue 在我使用“emit”时抱怨我正在寻找功能相同的替代方案

这将是一个待办事项列表

代码:

<button @click="$emit('delete-todo-event', todo.id)">Button</button>

浏览器控制台中的警告:

runtime-core.esm-bundler.js?5c40:38 [Vue 警告]:无关的非发射事件侦听器 deleteTodoEvent) 已传递给组件,但无法自动继承,因为组件呈现片段或文本根节点。如果侦听器仅用作组件自定义事件侦听器,请使用“emits”选项声明它。在 <ToDos todoEntries= (9) [代理,代理,代理,代理,代理,代理,代理,代理,代理] onDeleteTodoEvent=fn<bound deleteToDoItem> > 在 <App>

4

1 回答 1

4

您似乎正在使用 Vue 3。警告告诉您在组件中使用它之前没有声明您的事件。这是一个例子:

export default {
  name: "YourComponent",
  emits: ["deleteTodoEvent"], // <--- this is what the warning in hinting to
  setup(_,{ emit }) {
    ...
  },
};
于 2022-01-27T15:07:07.890 回答