vuejs3 - 如何将模板引用分配给嵌套对象属性
问题描述
我的脚本标签如下所示:
<template>
<div>
<div ref="publicKey.element">Public</div>
<div ref="privateKey.element">Private</div>
</div>
</template>
<script setup>
const publicKey = {
element: ref(null),
onClick: () => alert('public clicked'),
}
const privateKey = {
element: ref(null),
onClick: () => alert('private clicked'),
}
</script>
基本上,我不想将模板 ref 分配给顶级组合 api ref,而是将其应用于嵌套在对象中的 ref。
问题是上面的 ref="publicKey.element" 没有做任何事情 - 当我检查“元素”属性下的值时,只有常规的 ref 对象并且 _value 为空。
我如何在那里放置一个实际的元素?
解决方案
使用 ref="" 属性的函数语法 文档显示了一个带有 v-for 的示例,但您也可以在没有 v-for 的情况下使用它
<div>
<div :ref="el => publicKey.element.value = el">Public</div>
<div :ref="el => privateKey.element.value = el">Private</div>
</div>
推荐阅读
- rest - 如何获得针对 swagger ui 的 api 测试覆盖率
- c# - C# 控制台应用程序中的 WebBrowser 无法导航
- reactjs - 使用提供者 ReactJS 验证表单
- flutter - 如何在颤动中使容器大于实际屏幕
- android-databinding - 使用双向数据绑定和 Livedata 时视图启用不起作用
- javascript - 如何在 vue @click 中获取 html 元素 ID?
- android-studio - 为什么我的设计屏幕是灰色的,并且在 Android Studio 中只显示“androidx.constraintlayout.ConstraintLayout”?
- excel - VBA - Slicercache Addpivottable Error-1004
- html - 如何在鼠标悬停时更改垫表的字体颜色
- python - 使用 Docker API for Python 时出现“URL 超出最大重试次数:/v1.35/containers/create”错误