Vue的受控ref

  • 这里的ref指的是作用在attribute上的ref(<div ref="divRef">something</div>

除了我们普通的绑定ref的写法,Vue的ref还支持自定义存储位置

Reference: ref - Vue.js

ref的类型定义:

export declare type VNodeRef = string | Ref | ((ref: Element | ComponentPublicInstance | null, refs: Record<string, any>) => void);

这种受控ref在一些特殊情况下会很有用。比如一般我们在使用组件库的table组件时,可能需要通过传slot,或columns之类的属性来定义列。如果这时我们想对自定义列中的元素绑定ref,由于这里不是直接对列进行v-for<div v-for="i in 3" :key="i" ref="divRef"></div>),因此我们无法获取到对应的ref数组,只会拿到一个单一的VueInstance。此时我们可以通过定义函数ref对每一个ref单独存储。

评论加载中 (ง •̀ω•́)ง