问题
最近在浏览器上运行Cocos Creator工程时,总是提示这个错误Cannot read properties of null (reading 'getGFXTexture')
,如下图:
原因
图片纹理被清空所导致,自己在网上找的答案
解决方案
这里简单说下我自己的解决方案。
1、vsCode打开Cocos的源码调试功能(报这个错的时候vscode会有提示,或者自己百度)
2、查看堆栈,定位到这个地方,如下图:
3.1 在Cocos Creator中文社区里有人回答了一种方法,将这里 if(frame)
的判断改为if(frame && frame.isVaild)
,我试了下这个方法,好像没有什么用,即使有用的话也只是阻止报错,不能从根本上解决问题(后面一句是自己的见解,如果有误,还请谅解)。
这里介绍我的方法:
还是一样断点到这个地方,千万别想着打日志,这个文件是只读文件。然后查看frame
的值,这个frame
就是你要加载的那个SpriteFrame
,这里面有个参数uuid
。复制uuid
然后在Cocos Creator的资源管理器中直接搜索,看是哪张图片的纹理被清空了。
找到这张图片后,点击右键,选择查找UUID的使用
,就可以知道有哪些地方引用了这张图片,然后根据引用去查看,就可以很好的解决这个问题啦~