微信小程序自定义组件boundingClientRect获取到的rect值为null

解决办法:

在自定义组件内获取必须用SelectorQuery.in()

Component({
  lifetimes: {
    ready() {
      const query = wx.createSelectorQuery().in(this)
      const num = Math.ceil(this.data.picList.length / LINE_LENGTH)
      query.select('.tab-content-item').boundingClientRect((rect) => {
        this.setData({
          swiperHeight: rect.height * num + 'rpx'
        })
      }).exec()
    }
  },
})

const query = wx.createSelectorQuery().in(this)
这一句是最重要的,要用.in(this),this传入的是自定义组件的实例。
否则获取到的rect值为null

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理