Heim > Fragen und Antworten > Hauptteil
Vue beschwert sich, wenn ich „emit“ verwende, ich suche nach einer funktionell gleichwertigen Alternative
Das wird eine To-Do-Liste
Code:
<button @click="$emit('delete-todo-event', todo.id)">Button</button>
Warnung in der Browserkonsole:
runtime-core.esm-bundler.js?5c40:38 [Vue-Warnung]: Ein unabhängiger, nicht ausgegebener Ereignis-Listener (deleteTodoEvent) wurde an die Komponente übergeben, kann aber nicht automatisch geerbt werden, da die Komponente ein Fragment oder einen Textstammknoten rendert. Wenn der Listener nur als benutzerdefinierter Ereignis-Listener einer Komponente verwendet werden soll, deklarieren Sie ihn mit der Option „emis“. bei <ToDos todoEntries= (9) [Agent,Agent,Agent,Agent,Agent,Agent,Agent,Agent,Agent] onDeleteTodoEvent=fn<bound deleteToDoItem> >
P粉1781328282024-03-20 13:18:03
您似乎正在使用 Vue 3。警告告诉您在组件中使用事件之前没有声明事件。这是一个例子:
export default { name: "YourComponent", emits: ["deleteTodoEvent"], // <--- this is what the warning in hinting to setup(_,{ emit }) { ... }, };