白鹭编译自己写的其他模块作为插件使用
使用白鹭开发微信小游戏,编译到微信小游戏导致"main.js"超过500kb。
需要减少该文件的大小。就想减少当个文件的大小。
开始想压缩js文件。研究发现这个方案不可行。白鹭导出微信小游戏已经压缩了。
所有就想把现有模块进行分离一部分作为第三方插件的形式加入到游戏。这样就可以减少"main.js"的大小。
使用提供的第三方库 http://developer.egret.com/cn/github/egret-docs/Engine2D/projectConfig/libraryProject/index.html
egret create_lib ModulePlugin
执行后只有这二个JSON文件
自行创建上图的文件夹
bin是插件导出目录
libs可以放你编译插件的依赖的库文件
src编译插件放置源码的地方
typings 编译JavaScript库使用的头文件
修改tsconfig.json文件:
{
"compilerOptions": {
"target": "es5",
"noImplicitAny": false,
"sourceMap": false,
// 是否生成.d.ts文件。 如果是typescript库设置为true,如果是javascript库设置为false
"declaration": true,
"outFile": "bin/ModulePlugin/ModulePlugin.js", // 生成的库文件的路径
},
"include": [
"libs",
"src"]
}
tsconfig.json是控制编译库的配置文件。
在include增加编译libs。这样就可以添加我们插件依赖的第三方库文件了。实际项目必须有这些库环境。
在ModulePlugin就可以只放库的头文件。让编译通过
修改package.json 文件:
{
"name": "ModulePlugin",
"compilerVersion": "5.2.29",
// 新增一个字段
"typings": "typings/demo.d.ts"
}
执行后 egret build ModulePlugin
就可以在bin文件夹看到我们刚才编译的第三方库文件了