Closed
Description
As a follow-up to liximomo/vue-function-api#10 (comment), the refs are now injected, but they can only be accessed inside of a lifecycle method. I don't believe this is the desired usage.
For example, I have a custom hook that binds and removes an event listener to the DOM node passed into it as a parameter. Because my custom hook cannot be called inside of a lifecycle method (because it has lifecycle methods inside of it), I can only call my custom hook at the first level of setup(). I like this functionality, and the errors were clear.
console.log("outside:");
console.log(context.refs.elementKeypress); // undefined
onMounted(() => {
console.log("inside:");
console.log(context.refs.elementKeypress); // <div data-v-763db97b="" class="element-keypress-demo">Ref</div>
});
// hook fails to bind event listener to 'undefined'
useElementKeypress("u", context.refs.elementKeypress, () => {
console.log("clicked!");
});
My problem is that the ref is undefined
when passing it into the custom hook.
Metadata
Metadata
Assignees
Labels
No labels