我想获取scroll-view里面元素的位置。但是获取元素的回调不执行。
代码如下:
.ts
onLoad() {
const query = wx.createSelectorQuery().in(this);
const { activeCategoryIndex } = this.data;
query.selectAll('.categoryTitle').boundingClientRect();
query.select('.navigation-bar').boundingClientRect();
query.exec((res) => {
// 回调没有进入。
console.log(res)
});
}
.wxml
{{item.categoryName}} ...
看到有警告:
检测到 NodesRef.boundingClientRect 不能立即回调,可能由于 scroll-view 的按需加载特性,使得不在屏的节点无法立即取到节点相关信息
看了下文档,这个按需加载貌似是type = “list”时候有的,于是改成了custom没有了这条信息,但是仍旧不能回调。
代码参考:https://tdesign.tencent.com/miniprogram/components/side-bar
编辑
新建了一个JS的项目就工作,ts的就是如上的问题,原因是什么呢?
别放load执行,元素都还渲染完成呢,加个定时器看下是否能成功执行