白鹭发布ES6时uglify-js不支持es6的解决方案

JavaScript021

白鹭发布ES6时uglify-js不支持es6的解决方案,第1张

试了一下发布ES6,结果报错,不支持uglify-js,需要换插件。从论坛中找到如下链接:

https://bbs.egret.com/forum.php? ... 52516&highlight=es6

但是看了一下发现并不是很合适,因为Egret中有不少地方用到了uglify-js,换起来有点麻烦。

这里我直接使用uglify-js的harmony分支uglify-es,源在github上:

https://github.com/mishoo/UglifyJS2/tree/harmony

按以下步骤操作:

1.按上面链接的文档进行安装,我直接npm安装的,没有替换Egret集成的uglify-js

2.安装完后找到Egret库中的utils.js,我的Mac目录在:/Users/xxxxxx/Library/Application Support/Egret/engine/5.2.14/tools/lib/utils.js

3.打开utils.js进行修改:

找到:

修改为:

完成第一步,此处使用刚安装好的库

然后找到:

修改为:

此处是为了处理egret publish的时候会引起的编译错误。

4.执行egret publis,可以正常发布。

目前我这么处理还没问题,不知道是否有隐藏问题,感谢指正。

ES6越来越广泛,期待Egret官方能够把常用集成库都处理成支持ES6的版本。

5.备注:

uglify在对第三方库生成.min.js时,如果想集成到Egret中,不要加参数,直接输出即可。示例如下:

1.错误写法,能正常debug能正常release但不能正常运行:

2.正确写法,全部正常:

** 补充:如果编译目标可为es5,忽略以上全部说明,直接在lib中添加es6配置即可,如下

曾经cocos的脑残粉,从1.x开始用,2.x后的每出一个版本,我都会激动地第一时间下载下来编译看看多了什么新内容。然而很多时候正式版都编译不了,beta版就更是惨不忍睹了,至于引擎内部的坑,那就更列举不完了。

每次发布新版本,总是引入一堆BUG,之前能用的又不能用了。cocos最坑的地方是许多官方吹上天的功能也就骗骗新手入坑,根本不能用,一堆BUG,比如cocostudio, cocoside,给我的感觉是引擎官方的态度问题,未来也不会有好转。

目前在做的游戏不用cocos了,以后也不会选择用cocos的项目,多了些思考游戏该怎么做的时间,少了些和引擎勾心斗角的时间,生活美好了许多~PS:最近看到某位开发者升级最新版本3.8的经历,你们感受下~

1、宋·苏轼《浣溪沙·渔父》

原诗:

西塞山边白鹭飞,散花洲外片帆微。桃花流水鳜鱼肥。

自庇一身青箬笠,相随到处绿蓑衣。斜风细雨不须归。

译文:

西塞山江边白鹭在飞翔,散花洲外江上片片白帆船在轻轻地飘动。桃花水汛期鳜鱼长得肥胖。自有遮护全身的青竹壳斗笠,与斗笠相伴的还有绿蓑衣。斜风夹杂着细雨,过着乐而忘归的渔翁生活。

2、唐·李白《秋浦歌十七首·十三》

原诗:

渌水净素月,月明白鹭飞。

郎听采菱女,一道夜歌归。

译文:

透明的绿水中映着一轮素净的明月,一行白鹭在日光下飞行。种田郎荷锄听采菱女唱歌,并一道唱和着山歌踏月而归。

3、唐·杜甫《绝句》

原诗:

两个黄鹂鸣翠柳,一行白鹭上青天。

窗含西岭千秋雪,门泊东吴万里船。

译文:

两只黄鹂在翠绿的柳树间鸣叫,一行白鹭直冲向蔚蓝的天空。坐在窗前可以看见西岭千年不化的积雪,门前停泊着自万里外的东吴远行而来的船只。

4、唐·刘禹锡《白鹭儿》

原诗:

白鹭儿,最高格。

毛衣新成雪不敌,众禽喧呼独凝寂。

孤眠芊芊草,久立潺潺石。

前山正无云,飞去入遥碧。

译文:

白鹭儿,品格最高尚。新长出的洁白羽毛雪都比不上,许多禽鸟大声喧嚷它却独自凝眸沉寂。它孤独地睡在荒僻茂盛的野草中,久久地卓然特立于潺潺泉水里的石上。当前山烟云消散的时候,它就展翅迅飞于辽阔的碧空。

5、唐·张志和《渔歌子·西塞山前白鹭飞》

原诗:

西塞山前白鹭飞,桃花流水鳜鱼肥。

青箬笠,绿蓑衣,斜风细雨不须归。

译文:

西塞山前白鹭在自由地翱翔,江岸桃花盛开,江水中肥美的鳜鱼欢快地游来游去。渔翁头戴青色斗笠,身披绿色蓑衣,冒着斜风细雨,悠然自得地垂钓,连下了雨都不回家。