Webpack插件definePlugin和CommonsPlugin

时间:2016-12-03 15:47:15

标签: webpack

我对webpack(和流程经理)很陌生。是否有人可以帮助我并解释这两个插件,因为我没有在任何地方找到任何文件。他们在做什么?他们的目的是什么???

var definePlugin = new webpack.DefinePlugin({
    __DEV__: JSON.stringify(JSON.parse(process.env.BUILD_DEV || 'true')),
    __PRERELEASE__: JSON.stringify(JSON.parse(process.env.BUILD_PRERELEASE || 'false'))
 });

 var commonsPlugin = new webpack.optimize.CommonsChunkPlugin('common.js');

1 个答案:

答案 0 :(得分:2)

Webpack中的DefinePlugin用于在webpack编译时注入全局变量。我猜你的项目中使用__DEV__属性来获得建筑环境(生产,测试,开发......)。同样适用于__PRERELEASE__属性。这些是Webpack在编译期间可以使用的自定义变量。

对于CommonsPlugin,它用于将代码划分为单独的文件(例如,app.js =您的自定义代码,vendor.js =外部库)。这在调试时很有用,因为在您自己的代码中查找错误时,您不需要.map文件中的所有库。