已有分包模板,在我的资源里面,
不想下载的这里直接贴代码复制也可以
简单流程:首先加载 index.js,这里转到js/main.js触发qq/wx的加载分包加载sub1/index.js
下面是QQ小游戏的模板,微信同理
模板目录
game.js
if ((typeof swan !== 'undefined') && (typeof swanGlobal !== 'undefined')) {
require("swan-game-adapter.js");
require("libs/laya.bdmini.js");
} else if (typeof qq!=="undefined") {
require("weapp-adapter.js");
require("libs/laya.qqmini.js");
}
window.loadLib = require;
require("index.js");
require("libs/box2d.js");
game.json
{
"deviceOrientation": "portrait",
"showStatusBar": false,
"networkTimeout": {
"request": 5000,
"connectSocket": 5000,
"uploadFile": 5000,
"downloadFile": 5000
},
"subpackages": [
{
"name": "sub1",
"root": "sub1/"
}
]
}
index.js
/**
* 设置LayaNative屏幕方向,可设置以下值
* landscape 横屏
* portrait 竖屏
* sensor_landscape 横屏(双方向)
* sensor_portrait 竖屏(双方向)
*/
window.screenOrientation = "portrait";
// window.gameCfg = {ver="0.0.4"}
// //-----libs-begin-----
// loadLib("libs/box2d.js?ver="+ window.gameCfg.ver)
// loadLib("libs/laya.physics3D.js")
// //-----libs-end-------
// // loadLib("libs/domparserinone.js");
// loadLib("libs/zlib.min.js");
// loadLib("libs/protobuf.js");
// loadLib("libs/netdata.min.js");
// loadLib("js/bundle.js?ver=" + window.gameCfg.ver);
// window.gameCfg = {ver="0.0.3"}
//-----libs-begin-----
// loadLib("libs/laya.physics3D.js")
//-----libs-end-------
loadLib("libs/domparserinone.js");
//loadLib("libs/box2d.js");
loadLib("libs/box2d.js")
loadLib("libs/zlib.min.js");
loadLib("libs/protobuf.js");
loadLib("libs/netdata.min.js");
loadLib("js/main.js");
libs下面放一些固定不变的js
文件夹js下面创建main.js
代码如下
(function () {
'use strict';
let qq=window.qq;
qq.loadSubpackage({
name:'sub1',
success:function(res){
console.log("加载分包成功!");
},
fail:function(res){
console.log("加载分包失败!")
}
})
}());
sub1下新建
game.js代码
window.loadLib = require;
require("index.js");
index.js代码
loadLib("js/bundle.js");
文件夹js下存放的是bundle.js
至此分包完毕,还是不懂的话 这里有demo:模板
下载模板的这里赠送一个bat命令,放在模板同级
dbzj_qq_subpackage.bat代码如下(记得修改路径)
xcopy .\qqgame_template\*.* .\qqgame_pack\ /e /y
move .\qqgame_pack\js\bundle.js .\qqgame_pack\sub1\js\
pause