在昨天我发布了killCube v2.0.0
v2.0.0与v1.0.0相比
主要是用ES6重写,并为游戏增加了音效
第一次打包完的bundle.js
大概有2.8MB大小。首次加载简直是一个噩梦,半分钟也不一定能够加载出来。
于是今天开始做优化相关的工作,更多详细的优化在彻底完成或许会写博文记录
通过关闭devtool
,将bundle.js
减小到了1.2MB左右
这里记录下使用Uglifyjs
遇见的问题
从上面的图片可以看出,引入Uglifyjs
插件后,是1.21MB大小。问题在于引入插件前,终端显示也是1.21MB.
于是我认为这个插件没有生效,百之谷之,都没有解决我的问题。翻看完官方文档依旧没有结果。
这一折腾就是五六个小时,最后意外的发现了原因。
原来插件是生效的,但是整个文件只优化了4kb,相对1.21MB是忽略不计的,所以在终端上没有显示出来。
给我一种插件没有生效的错觉。
这里要解释下,Uglifyjs
的压缩效果还是很强大的,可为什么这里只优化了4KB呢?
我将44个时长为0.5的音频通过node脚本转码成了一个base64的数组。base64数组里面的内容本身间隙很小,几乎没有多余的空格,也就是没有压缩的空间了。
有群友提到,可以使用mid格式进行优化。可以尝试下。