700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 小程序组件获取元素宽高失效 和canvas绘制问题

小程序组件获取元素宽高失效 和canvas绘制问题

时间:2022-09-13 09:58:04

相关推荐

小程序组件获取元素宽高失效 和canvas绘制问题

解决办法:

在自定义组件内获取必须用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

如果你的canvas不是在页面中,而是在自定义组件中的话,一个可能的原因是:

wx.createCanvasContext只传一个参数是不够的,需要再传入第二个参数this,如下:

var context = wx.createCanvasContext(mycanvasid,this)

/blog/2434235

/a/1190000019548718?utm_source=tag-newest

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。