2.4.0构建发布报错cc.resources.load找不到

  • Creator 版本:2.4.0

  • 目标平台: android

  • 详细报错信息,包含调用堆栈:load script […/configs/Def_Areaes] failed : TypeError: Cannot read property ‘load’ of undefined
    at Def_Areaes.cfgbase.readDataFromCSV (D:\QG_0706\QYQGame_ccscrt2.3.3\QYQGames\temp\quick-scripts\dst\assets\scripts\configs\cfgbase.js:24:22)
    at Def_Areaes.getConfig (D:\QG_0706\QYQGame_ccscrt2.3.3\QYQGames\temp\quick-scripts\dst\assets\scripts\configs\Def_Areaes.js:77:14)
    at new Def_Areaes (D:\QG_0706\QYQGame_ccscrt2.3.3\QYQGames\temp\quick-scripts\dst\assets\scripts\configs\Def_Areaes.js:46:15)
    at __define (D:\QG_0706\QYQGame_ccscrt2.3.3\QYQGames\temp\quick-scripts\dst\assets\scripts\configs\Def_Areaes.js:84:23)
    at D:\QG_0706\QYQGame_ccscrt2.3.3\QYQGames\temp\quick-scripts\dst\assets\scripts\configs\Def_Areaes.js:89:25
    at Object. (D:\QG_0706\QYQGame_ccscrt2.3.3\QYQGames\temp\quick-scripts\dst\assets\scripts\configs\Def_Areaes.js:96:19)
    at Object. (D:\QG_0706\QYQGame_ccscrt2.3.3\QYQGames\temp\quick-scripts\dst\assets\scripts\configs\Def_Areaes.js:98:3)
    at Module._compile (internal/modules/cjs/loader.js:839:30)
    at Object.Module._extensions…js (internal/modules/cjs/loader.js:851:10)
    at Module.load (internal/modules/cjs/loader.js:701:32)

  • 重现方式:执行构建发布

  • 之前哪个版本是正常的 :2.3.3

  • 手机型号 :

  • 手机浏览器 :

  • 编辑器操作系统 :

  • 编辑器之前是否有其它报错 :无

  • 出现概率:必现

  • 额外线索: 在编辑器里直接运行调试OK,一旦构建发布就会报错resources.load找不到

这是调用cc.resources.load的方法

重新更新creator.d.ts文件试试,,我这边也是用的2.4,是正常的

已经解决了,我把constructor里面调用cc.resources的部分移出去了

1赞

我没太看懂你这里哪有 constructor?

遇到了同样的问题,请问这个有什么解决方案吗?

看下你的 cc.resources.load 是什么时候调用的吧?不要写在代码最外层。

是指在首场景启动之后,再去调用么?

是的,不能写在代码最外层

感觉这个cc.resources容易误导人。
这是一个依据项目assets根目录下是否存在resources目录而动态创建的bundle类型的对象。
所以 cc.resources 不是必定存在的;即使存在,它的使用也跟顺序有关,也就是不能写在代码最外层。

1赞