踩坑记录:Taro.createSelectorQuery找不到元素

问题:Taro.createSelectorQuery()在 useEffect 里 一直找不到元素

代码记录附上:

scss 复制代码
useEffect(() => {
  const query = Taro.createSelectorQuery();
  query.select('#some-element').boundingClientRect((rect) => {
    console.log(rect); // ❌ always null
  }).exec();
}, []);
​

查阅链接后 docs.taro.zone/en/docs/ref 发现,考虑到小程序的实现机制,需要配合在 onReady 生命周期中获取节点信息。也就是Taro.createSelectorQuery要放在 onReady阶段,ai回答的这段话是错误的,react hook和小程序钩子没有一一对应的关系。

修改后代码

js 复制代码
// a 元素滑动到b 元素 
useReady(() => {
    Taro.createIntersectionObserver(
      Taro.getCurrentInstance(),
      {
        thresholds: [0.2],
        observeAll: true,
      },
    ).relativeTo('#b', { bottom: -400 }).observe('#a', (res) => {
      // do someting...
      console.log(res)
    });
  });
  
相关推荐
对空六课7 小时前
无头浏览器访问对跳出率的过滤规则
服务器·前端·算法·数据分析
小番茄夫斯基7 小时前
Nginx 介绍
前端
小番茄夫斯基7 小时前
如果我一个前端页面要被用户看到,原理是什么,用户怎么通过网址就看到页面的,这背后要怎么弄
前端
迅猛龙办公室7 小时前
Python实现获取星期字符串
java·前端·python
小小荧7 小时前
🚀 Node.js 之父离开 Deno,带着整个团队加入了 Cloudflare
前端·node.js
IllegalCreed7 小时前
人中吕布,卡中 Blackwell:我用三国志14的数值给 687 个大模型排了座位
前端
troy1287 小时前
Java Web 常见面试题(2026 最新整理)
java·前端·hive
子龙_7 小时前
来在网页上用threejs画个蛋白质吧
前端·webgl·three.js