javascript - Vue 3 refs 在渲染函数中未定义

标签 javascript typescript vue.js vuejs3

我有一个简单的 Vue 组件,其根元素为 ref="divRef" .然而,在 onMounted函数, divRef.value返回未定义。任何帮助将不胜感激。

import { defineComponent, onMounted, ref, Ref, h } from "vue"

export default defineComponent({
    setup(props, context) {
        const divRef = ref() as Ref<HTMLElement>

        onMounted(() => {
            console.log(divRef.value) // undefined
        })

        return () => {
            return h(
                "div",
                {
                    ref: "divRef"
                },
                "This is a div"
            )
        }
    }
})

最佳答案

在您的 render函数,传递divRef本身,而不是字符串:

return h(
    "div",
    {
        //ref: "divRef"   // DON'T DO THIS
        ref: divRef
    },
    "This is a div"
)

关于javascript - Vue 3 refs 在渲染函数中未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62839300/

相关文章:

javascript - 来自 Partials 的 Angular JS $scope 在 index.html 中不起作用

javascript - 使用输入作为提交按钮的 html 表单

javascript - 如何在react-native中连接特殊符号,例如 ¥

javascript - Angular2 错误 - 我的登录组件没有提供程序错误

typescript - 检查变量是否可调用

vue.js - Vue JS 路由器查询传递并绑定(bind)到 axios

javascript - 如何在 Vue 2 中设置组件非 react 性数据?

javascript - 将键值数组存储在本地存储中

javascript - Laravel 分页表 - 对一列进行排序

javascript - 如何在 SPA 中处理角色/权限(Laravel+Vue)