退房node-config
- 创建
default.js
其中包含你的开发的WebPack配置。
- 在
default.js
创建额外配置一个production.js
默认node-config
会选择default.js
并将其提供给的WebPack。
如果您设置NODE_ENV=production
,它会选择production.js
并执行Object.assign({}, default, production)
并将其提供给webpack。
通过这种方式,您将能够管理n个env
config for webpack。
它帮助!
[更新]
添加一个例子来说明你的情况......
在项目的根目录下创建config/default.js
export default {
entry: ['./foo/bar', './foo1/bar1'],
output: {
path: path.resolve('./build/js'),
filename: '[name].js',
publicPath: '/js/'
},
}
在根目录下创建config/production.js
您的项目
export default {
entry: ['./foo/bar', './foo1/bar1', './new/entry'], //adding the new entry
plugins: [
new webpack.optimize.UglifyJsPlugin({
compress: {
warnings: false,
},
}),
],
}
在项目的根目录下创建webpack.config.babel.js
import config from 'config' //I'm using ES6 style. You can use require also
export default config.default //export the config based on the NODE_ENV
展会时间
webpack --progress --colors
default.js as the config
在这种情况下节点配置将返回
NODE_ENV=production
webpack --progress --colors
在这种情况下,node-config将同时采用default.js
和production.js
,并覆盖超过default.js
(这里来自production.js的条目和插件将在default.js中被覆盖),并且它将返回带有{entries(从production.js
),输出(从default.js
),插件(从production.js
)},这是一个Object.assign()操作。
返回到default.js
。您需要重置NODE_ENV
NODE_ENV=
Yov可能需要使用export
或exports
,同时根据您的操作系统 希望它可以帮助做NODE_ENV
你能告诉我一个工作的例子吗?我应该如何处理Object.assign? – asiniy
@asiniy你不需要对Object.assign()做任何事情。 node-config会照顾到这一点。我会添加一些例子。 –
'inject'是什么意思?根据'env'添加额外的'entries'? –