javascript - Vue 的 ref 每次使用时都会执行一次 DOM 查找吗?
问题描述
我目前正在测试 Vue.js,并在我的项目中使用了一些参考。我不确定是否每次在我的方法中调用 ref 时都会执行 DOM Lookup,或者 vue 是否将所有 ref 存储一次然后访问该引用。
我无法通过文档或谷歌找到答案。
例子
myDiv = this.$refs.myDiv
我是否需要自己将 ref 存储在变量中,或者多次调用 ref 时不会影响性能?
解决方案
浏览源代码,当启动一个 vue 实例时,它会将属性设置$ref = { }
为一个空对象。查看initLifecycle
功能
vm.$refs
通过检查虚拟节点是否在函数中具有ref
属性来填充该对象。vnode.data.ref
registerRef
因此,您不必自己执行此操作。
并且引用$refs.myRef
不执行 DOM 查找。它将由虚拟 dom 补丁进程管理。
推荐阅读
- javascript - 如何在 iframe 上加载 html 时转义 (') 引号或 (") 双引号
- momentjs - 服务器端渲染momentjs无法正确显示
- android-studio - 如何允许在 AVD 文件夹中创建 SD 卡?
- r - R中具有水平方向变量的治疗效果表
- node.js - i18next 将 en-US 语言环境映射到 en 命名空间文件夹/文件
- node.js - 将 axios 响应(类型:'stream')传递给 ffmpeg 时出错
- c++-coroutine - C++20 co_await 睡眠?
- python - 使用 MultiIndex 对 DataFrame 的行和列求和
- python - 渲染可变表单字段
- python - 将一串浮点数组转换为 ndarray