TS篇
-
TypeError: Cannot read property ‘xxx’ of undefined
出现场景:如果有同名脚本可能出现此问题。不论是否在不同文件夹
解决方案:改名 -
TypeError: Object prototype may only be an Object or null: undefined
出现场景: - 1.循环引用,a.ts 导入b.ts、 b.ts 导入a.ts
**解决方案:**用dpdm模块排查或者手动排查 - 2.父类脚本位置在子类脚本位置下方, 比如子类放在a文件夹, 父类放在b文件夹, 脚本排序是通过文件价字母顺序排序->脚本字母顺序排序, 那么子类脚本就在父类上
**解决方案:**这时候只需要将父类置于子类上分即可,如果还有错请检查循环引用 -
Uncaught TypeError: xxx is not a constructor
出现场景:工具/插件自动生成的脚本导出的类
解决方案:Ctrl + S一次,如果不行就先随便打个字母再删除后再保存 -
TypeError: Cannot use ‘in’ operator to search for ‘enums’ in undefined
出现场景:使用合并模块内的枚举
解决方案:将枚举放在使用类之上,所以必须移出模块
VSCode篇
- 每次更新或关闭Code报错,Code安装位置错误,应该在默认的C盘位置,也就是C:\Users\Administrator\AppData\Local\Programs\Microsoft VS Code
引擎篇
- 2.3.2
- 添加新节点后位置错乱: 检查是否使用过cc.director.pause()后没有在添加节点前cc.director.resume()
- cc.instantiate克隆对象而不是预制体设置spriteFrame出错: 改用预制体
安卓打包
- 错误信息
* What went wrong:
A problem occurred configuring project ':game'.
> Parameter specified as non-null is null: method com.android.build.gradle.internal.cxx.configure.JsonGenerationVariantConfiguration.<init>, parameter ndkVersion
检测打包选择的android版本号,查看ndk目录是否有相同的版本
一般使用最新的ndk和sdk就可以解决,最好用android stdio下载
- 错误信息
* What went wrong:
Execution failed for task ':game:externalNativeBuildReleaseFeature'.
> Build command failed.
检查路径是否包含特殊字符或者过长, 建议把项目文件夹放在根目录下并且项目文件名不要包含一些特殊字符,然后删除build文件夹重试