在安卓上绘制了一个canvas时高概率崩溃,宽度没有问题。
wx.createSelectorQuery()
.select('#cvs4')
.fields({
node: true,
size: true,
})
.exec((res) => {
if (!res[0]) return
const canvas = res[0].node
const ctx4 = canvas.getContext('2d')
// 设置canvas 高宽
const dpr = wx.getSystemInfoSync().pixelRatio
canvas.width = 0
console.log(' draw count line is:', 0 )
canvas.width = _pixW * dpr
console.log(' draw count line is:', 1 )
canvas.height = _pixH * dpr
ctx4.scale(dpr, dpr)
console.log(' draw count line is:', 2 )
ctx4.font = `${rpxToPx(100)}px`
ctx4.textBaseline = 'middle'
ctx4.fillText(`${count}`, getPointX(), rpxToPx(textBasePxH / 2 + 20));
console.log(' draw count line is:', 4 )
})
每次发生崩溃时代码运行到这一行小程序就崩了: ctx4.fillText(`${count}`, getPointX(), rpxToPx(textBasePxH / 2 + 20));
请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。
之前代码是当有数据的时候才生成canvas; 今天修改了一下,canvas一直存在就不会崩了;
但是由于我的组件是放到直播视频上的,旋转之后dom就被重新加载了,必崩;
有没有官方人员看下,是不是canvas没有清理导致的崩溃,如何解决一下?
ctx4.fillText('test...', 0, 0); // 写死看下还会崩咩
模拟器上有问题吗,有没有报错,是单一机型还是其他机型都有