试了好多写法都获取不到 不是null就是{}
小程序感觉不好用ref
直接上代码
onMounted(async () => {
const instance = getCurrentInstance();
const query = uni.createSelectorQuery().in(instance);
for (let i = 0; i < tabList.value.length; i++) {
const data = await new Promise(resolve => {
query
.select(`.active${i}`)
.boundingClientRect(resolve)
.exec();
});
widthList.value.push(data.width);
underlineTranslateX.value=widthList.value[0]/2-8 //这里的8是下划线宽度的一半
console.log(underlineTranslateX.value,'underlineTranslateX');
}
});
不要动态不循经写死就行
但是得在onMounted执行
循环的话 要注意 select 方法是异步执行的 为了解决这个问题,可以使用 Promise 或者 async/await 来等待异步操作完成