Можно ли предоставить функцию в Vue 3, а затем вызвать функцию в дочернем компоненте?
Я знаю, что это сработало с option API
:
provide() {
return {
$list: this,
};
},
Но как я могу добиться того же с composition API
?
Вот мой подход:
Родительский компонент:
setup(props) {
const handleEdit = (item) => {
emit("edit", item);
};
provide("$list", handleEdit);
return { handleEdit };
}
Дочерний компонент:
setup(props) {
const { item } = props;
const list = inject("$list");
const handleEditItem = (e) => {
list.handleEdit(item);
};
}
А вот и ошибка Uncaught TypeError: _ctx.handleEditItem is not a function