最近移植微信小游戏到QQ平台,移植排行榜时遇到如下问题:
Canvas.js:60 Uncaught TypeError: Cannot redefine property: clientWidth
at Function.defineProperty (<anonymous>)
at new Canvas (Canvas.js:60)
at HTMLDocument.createElement (document.js:55)
at Object.getColorizedImage (cocos2d-js-min.a8f43.js:1)
at Object.draw (cocos2d-js-min.a8f43.js:1)
at r._commitComp (cocos2d-js-min.a8f43.js:1)
at g.150.y._render (cocos2d-js-min.a8f43.js:1)
at g.150.y._color (cocos2d-js-min.a8f43.js:1)
at g.150.y._updateRenderData (cocos2d-js-min.a8f43.js:1)
at g.150.y._worldTransform (cocos2d-js-min.a8f43.js:1)
这个问题最终抛出的地方是引擎里面:
经过跟踪异常爆出的引用路径加上百度,最终得到解决,问题原因是是因为我给一张图片设置了颜色值导致,改成默认颜色(白色)后,该问题得到解决。
这个提问下面的答复给了我一点提示,在此标识感谢:https://forum.cocos.org/t/qq-label/85713
另外这个问题最终抛出的Canvas.js:60 Uncaught TypeError: Cannot redefine property: clientWidth,我在label用默认字体的时候也会抛出,所以看这个问题应该看中间
at HTMLDocument.createElement (document.js:55)
at Object.getColorizedImage (cocos2d-js-min.a8f43.js:1)
这两句应该会提示性强一点。我目前的解决方案是,用彩色的图,不手动设置颜色值,绕开这个问题,不过还是希望cocos引擎组能早日能修复这个问题。
来源:CSDN
作者:许集贤
链接:https://blog.csdn.net/xujixian6272002/article/details/103977231