感谢『简书 ID:橡树小屋』友情提供
Cocos Creator 是Cocos最新一代的游戏开发者工具,基于 Cocos2d-x、组件化、脚本化、数据驱动、跨平台发布等。Cocos Creator的开发思路是正确的,写起来也更方便快捷,开发效率更高。
但不可免俗的是,总有细枝末节需要开发者自行处理。其中,在发布Web Mobile平台上,就有各种小问题,例如给资源加上MD5版本号,Cocos Creator暂时还不支持。拭目以待本周即将发布的Cocos Creator v1.6正式版本,新增MD5 Cache功能,使用效果待追加评定。
正常来说,一般页面除了首页的index.html,其他资源都是要添加MD5版本号,1.6内测版确实增加了版本号,但只给图片等资源做了MD5,Cocos2d-js-min.js、main.js并没有加,暂时还不能用啊喂!
官方暂时不支持,只好自己动手丰衣足食了。
如果着急要打版本号的小伙伴,
不妨参考今天这篇教程。
具体思路是通过gulp等构建工具实现。
gulp安装请访问:https://gulpjs.com/
nodejs安装请访问:http://nodejs.org/
另外需要安装gulp相关插件:gulp-rev gulp-rev-collector
思路如下:
把build/web-mobile/src里面的project.js拷贝到build/web-mobile/,目的是为了匹配main.js里的‘project.js’
通过gulp-rev给js和png图片打MD5版本号
通过gulp-rev-collector替换文件原路径到打版本号的路径
gulpfile文件代码:
在命令行里面执行gulp就可以给相应的文件打版本号啦!
对比前后的版本打包情况,执行之前,除了图片,JS和css还是没有加MD5的:
可以看到,css和JS都是没有打MD5的,这个文件发到cdn会导致文件无法更新
执行gulp之后:
JS和css已经打上版本号。
细心的开发者可能看到project.js和图片没有打MD5。这里由于是提供思路,所以不把所有的功能完善,有兴趣的读者可以自己完善。实际上我不会把这几个JS和css打版本号的。最后产出只会把这几个文件合并到index.html中。
完整代码可以打开「阅读原文」访问,这个示例包含了Cocos Creator图片压缩优化、减少首次文件请求、html压缩、动态更新定制loading图等功能哦。