Egret社区

白鹭打包时的分包处理

2021-1-27 17:32
22417
需求: 想把代码分包(分成核心代码,以及业务逻辑代码),而不是只生成一个mian.js文件
作用:方便登录时快速加载,展示登录页
注:在egret里面好像没找到类似文档,所以自己写一个。(也可能是我没找到)

内容如下:
QQ图片20210127172807.png
如图上:在config文件中加入subpackages 即可。
当然主文件main.js还是会生成的 不需要的话那就在自己插件中过滤掉
QQ图片20210127173039.png


注:有什么不懂,或者写的不对的地方,欢迎评论区讨论.
分享到 :
1 人收藏

7 个回复

倒序浏览
路迷在海  登堂入室 | 2021-3-15 16:21:51
  1. new WebpackBundlePlugin({ //新的 Webpack 编译器
  2.                         libraryType: "release",
  3.                         defines: { DEBUG: false, RELEASE: true },
  4.                         typescript: { mode: 'legacy' },
  5.                         html: {
  6.                             templateFilePath: "index.html"
  7.                         }, subpackages: [{
  8.                             name: 'Core',
  9.                             matcher: (filepath: string) => {
  10.                                 if (filepath.indexOf('Core') == -1 && filepath.indexOf('Main.ts') == -1)
  11.                                     return true;
  12.                                 return false;
  13.                             }
  14.                         }
  15.                         ]

  16.                     }),
复制代码

我这样写了之后,只加载Core.js进不去游戏。必须把main.js也加载完之后才可以进入游戏。
进不去游戏时可以正常输出Egret Engine Version: 5.3.10 。也没有报错。
请问大佬,还有什么小细节我没照顾到吗
cyrwpj  圆转纯熟 | 2021-3-17 09:03:24
sub1和sub2不从一开始加载 是无法运行的。 你可以试下
路迷在海  登堂入室 | 2021-3-17 11:48:04
cyrwpj 发表于 2021-3-17 09:03
sub1和sub2不从一开始加载 是无法运行的。 你可以试下

没太明白你的意思。你那可以只加载一sub1进入游戏吗
cyrwpj  圆转纯熟 | 2021-3-17 15:40:43
路迷在海 发表于 2021-3-17 11:48
没太明白你的意思。你那可以只加载一sub1进入游戏吗

main.js  sub1.js sub2.js  
按照需求 应该是 main.js加载 然后运行游戏,等到某个时间点再加载sub1.js或者sub2.js 去运行其他模块
目前的话,sub1.js sub2.js 不加载,只加载main.js 是运行不起来的
路迷在海  登堂入室 | 2021-3-17 19:30:22
cyrwpj 发表于 2021-3-17 15:40
main.js  sub1.js sub2.js  
按照需求 应该是 main.js加载 然后运行游戏,等到某个时间点再加载sub1.js或 ...

俺也一样。
这样的话这个功能存在的意义就不大了啊。
引入Webpack后,打包的js文件有点不一样了,再想想办法吧
cyrwpj  圆转纯熟 | 2021-3-18 11:23:07
路迷在海 发表于 2021-3-17 19:30
俺也一样。
这样的话这个功能存在的意义就不大了啊。
引入Webpack后,打包的js文件有点不一样了,再想想 ...

等官方支持吧
一只小菜鸡  登堂入室 | 2021-3-30 20:36:40
嗯 我看了好像这个只做了分成多个js 而却没有做到 真正的分包加载
我自己改了一下打包出来的的文件 做到了分包加载 不过修改方案比较麻烦 还是等官方支持把
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号 )

Powered by Discuz! X3.4 © 2001-2019 Comsenz Inc.

返回顶部