收藏
回答

wx.createSelectorQuery()怎么获取当前页面组件中的元素?

wx.createSelectorQuery().select('#custom-tabbar').boundingClientRect().exec(function(res){
      console.log(res,'------能获子组件元素');
    }) 
wx.createSelectorQuery().in(_this.selectComponent('#custom-tabbar')).select(".custom-tabbar-item").boundingClientRect((res)=>{
        console.log(res,'--------------获取不到子组件内部的元素');
      })

    

最后一次编辑于  06-20
回答关注问题邀请回答
收藏

1 个回答

  • 廾匸
    廾匸
    06-20

    已解决

    官方文档如下:https://developers.weixin.qq.com/miniprogram/dev/api/wxml/wx.createSelectorQuery.html

    vant-weapp 使用组件要自定义class

    // 更新数据后,异步获取容器高度
         setTimeout(() => {
          var _this = this
          // 获取子组件实例
          const myComponent = this.selectComponent('#custom-tabbar');
    
    
          // 使用子组件实例的 createSelectorQuery 方法
          myComponent.createSelectorQuery().select('.tabbar-item').boundingClientRect(function(rect){
            console.log(rect,'---------2');
            _this.setData({
              setBottomNumber(rect.height)*2  + 30
            })
          }).exec();
        }, 300); // 注意,这里使用setTimeout是因为setData是异步操作,确保渲染完成后再获取高度
    

     

    06-20
    有用
    回复
登录 后发表内容