2016-11-11 59 views
0

在惯例,当我们写一个ES6模块,我们把源代码src文件夹,并使用babel-loaderwebpacklibdist文件夹设置代码ES5编译它,并设置main进入dist文件夹,然后发布到NPM 。与ES6模块相比,ES5模块是否支持webpack构建时间?

一方面,用户可以在不使用webpack的情况下使用该模块,并且代码可以运行。另一方面,使用webpack时,ES5代码可能会减少babel-loader时间,因为它已经是ES5代码。

我困惑什么是第二点,使用的WebPack时,不会在node_module ES5代码减少babel-loader时间,所以我们可以accelate的WebPack建立绩效?

问题几乎就是关于具有webpack构建性能的ES5 npm模块,尽管这是一个我们已经做过的约定,我只想了解一些关于webpack构建性能的内容。谢谢!

+0

如果代码已经是ES5,并且不必从ES6转换为ES5,那么看起来合乎逻辑的是性能会更好,因为它不必转换。然而,代码仍然需要解析和遍历(我猜),所以性能差异是否有任何意义取决于具体情况。 –

回答

1

是的,一般来说,公共软件包会与已经转换的源一起分发。性能优势,关于的WebPack和babel-loader,就是可以消费这些来源,是不必与babel-loader对其进行处理,所以你会看到常用的:

{ 
    test: '\.js$', 
    loader: 'babel', 
    exclude: ['node_modules'] 
} 

所以,我也感到困惑这段摘录,特别是为什么人们想要与Babel解析ES5代码,因为最终不会发生转换。

无论哪种方式,源代码总是由Webpack解析,而不必解析,事先用babel-loader进行转换,应该可以提高性能。