请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

请问老师怎么配置config可以先Tree shaking 再转译ES6?

正在回答

3回答

babili-webpack-plugin 是可以替代 uglify 对ES 6 + 进行tree shaking的,可能只不过能shake 掉的内容有限

0 回复 有任何疑惑可以回复我~
  • 提问者 KB_Handler #1
    好的  还是非常感谢老师
    回复 有任何疑惑可以回复我~ 2018-03-28 18:23:53
文燚 2018-05-20 11:42:41

问题:Babel默认将ES6模块通过commonJs模块转换输出,此时利用ES6模块的tree-shaking就不灵了。

方法:babel-preset-env有个modules的配置项就是控制这个的,把它设置成false就不会把ES6模块转换成commonJs了。

https://img1.sycdn.imooc.com//szimg/5b00ecfe00012b2005700176.jpg

1 回复 有任何疑惑可以回复我~
  • 提问者 KB_Handler #1
    目的是先tree-shaking再转译,如果设置了false,还会转译吗?
    回复 有任何疑惑可以回复我~ 2018-05-20 15:04:08
  • 文燚 回复 提问者 KB_Handler #2
    为什么你会觉得不能转译???
    回复 有任何疑惑可以回复我~ 2018-05-21 12:03:02
  • 提问者 KB_Handler 回复 文燚 #3
    你都设置了false怎么转移????
    回复 有任何疑惑可以回复我~ 2018-05-23 18:55:06
qbaty 2018-03-26 15:30:55

uglifyjs 之前不支持 es6+  可以用 babel-minify

babili-webpack-plugin 这个插件就是使用 babel-minify

0 回复 有任何疑惑可以回复我~
  • 提问者 KB_Handler #1
    嗯 是的 不是用babel-loader转译ES6的情况下
    单独使用uglifyjs以及babili-webpack-plugin都能做到很好的tree-shaking,但是他们都不能转译ES6的语法 
    但如果使用了'babel-loader',这两个插件的tree-shaking 都不再生效了!
    又想tree-shaing 又想转译  怎么破?
    回复 有任何疑惑可以回复我~ 2018-03-27 16:57:06
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信