echarts-for-weixin
echarts-for-weixin copied to clipboard
getContext' of null;at SelectorQuery callback function
提问前应该做的事
请确保提问前做了以下事,将完成的项目的 []
改为 [x]
:
需提供的信息
将符合项的 []
改为 [x]
,并补充需要的信息:
简单描述问题:
irdScriptError
Cannot read property 'getContext' of null;at SelectorQuery callback function
TypeError: Cannot read property 'getContext' of null
at n.
预期效果:
??? (如有需要请提供预期的图)
实际效果:
??? (如有需要请提供截图)
复现环境:
- [] 在微信开发工具中存在该问题
- [] 在真机上存在该问题
pc端才出现。。。手机上都是好的
是指开发工具才有问题吗?真机ok的话就行,开发工具经常有各种问题…如果你愿意,也可以去给微信小程序报 bug
是指开发工具才有问题吗?真机ok的话就行,开发工具经常有各种问题…如果你愿意,也可以去给微信小程序报 bug 默写真机 偶发~ ctx 没取到 宽高为0
是指开发工具才有问题吗?真机ok的话就行,开发工具经常有各种问题…如果你愿意,也可以去给微信小程序报 bug
是PC 版微信 的 小程序
我也出现了,有没有解决办法?
暂时解决了,修改ec-canvas.js文件 将isUseNewCanvas不用dome中的定义方法,demo中是基础库大于2.9.0时自动使用新canvas,实际上电脑版并不支持。因此改为在为在windows环境下打开小程序时,强制使用旧版canvas 具体代码为
// const isUseNewCanvas = canUseNewCanvas && !forceUseOldCanvas;
const { platform } = await wx.getSystemInfo();
let isUseNewCanvas = canUseNewCanvas && !forceUseOldCanvas;
if (platform && /windows/i.test(platform)) {
isUseNewCanvas = false;
} else {
isUseNewCanvas = canUseNewCanvas && !forceUseOldCanvas;
}
this.setData({ isUseNewCanvas });
forceUseOldCanvas
这个逻辑放在你的业务代码里去传入forceUseOldCanvas会好一点,而不是改官方代码