实验项目一直在电脑上测试,并没有原生打包,由于要测试摇杆打包在安卓测试遇到了一些坑与注意事项。
问题:模块间使用require引用,模拟器没问题但原生平台上不行。
解决:
原引用如下 require(‘assets/scripts/tools/encryptjs/encryptjs’) 一直报引用不到模块的错误。一度怀疑是不是模块写错了或者module.exports类型的模块或npm的模块不能够引用到,经过测试是因为路径问题。可是从开发环境的根路径开始的为啥会有问题?后把绝对路径改为了相对路径,require(‘./encryptjs/encryptjs’) 问题解决。
注意事项:
cocos creator 论坛里说过不能使用npm的基于node.js的模块。后来尝试后,仅是不能够使用基于node.js的非原生函数不能够使用。例如fs模块,是基于node.js的c++库基础上使用的。在cocos creator中基于node.js的模块可以在安装node.js的平台上运行。也就是说可以使用很多npm到的模块做小工具使用,也可以使用一些基于算法的模块(其中不包含使用node.js的函数)。