wepy2 获取元素节点

wepy.page
var query = wx.createSelectorQuery();
query.select('.wrap1').boundingClientRect();
query.exec(function (rect) {
    console.log(rect)
});

打印是有数据的

wepy.component

当我在组件中使用同样方法,返回的是null,很迷茫,直到我看见官方issue https://github.com/Tencent/wepy/issues/2251

微信官方文档

wx.createSelectorQuery()
返回一个 SelectorQuery 对象实例。在自定义组件或包含自定 义组件的页面中,应使用 `this.createSelectorQuery()` 来代替

所以正确的用法:

const query = this.$wx.createSelectorQuery();
query.select(dom).boundingClientRect();
query.exec( (rect) => {
    console.log(rect)
});
最后注意
wepy中的this是 wepy 的实例,this.$wx才是对应的小程序中的this

你可能感兴趣的:(小程序)