vue3 获取标签动态的ref
普通定义ref标签值如下:
<el-input ref="name" v-model="xxx" />
在script中我们通过如下的代码获取到定义的ref标签
const name = ref();
但是我们如果标签是动态生成的,他的值并不固定,需要通过:ref的方式进行绑定函数的方式,如下:
<el-input :ref="getInputRef" v-model="scope.row.attr_value" placeholder="请输入属性值" />
getInputRef是一个函数,其中有一个el参数,用于接收实例ref。
我们可以在script标签中,进行如下定义:
const inputRef = ref(); const getInputRef = (el) => { inputRef.value = el; }
注意getInputRef会取到当前操作的dom元素最新的ref。并且将之前的el置为空。所以我们获取最新的el数据即可。