在节点应用程序中,我试图区分应用程序的开发版本和生产版本。运行webpack-dev-server时,使用以下命令:
NODE_ENV =开发webpack-dev-server --inline --hot --content-base ./public
在我的应用程序中,我尝试使用process.env.NODE_ENV读取NODE_ENV中的内容,但它似乎为空。使用webpack-dev-server时,这不是设置环境变量的正确方法吗?
编辑:这是在我的React应用程序中。我使用Express在生产中为应用程序提供服务,但是我只是将webpack-dev-server用于开发目的。
最佳答案
设置环境变量NODE_ENV
可以在运行时通过process.env.NODE_ENV
访问,它特定于Node.js,并且在客户端代码中不可用。为了使其在您的客户端代码中可用,您可以使用webpack的DefinePlugin
:
plugins: [
new webpack.DefinePlugin({
'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV)
})
]
有关设置环境变量的更多信息:https://webpack.js.org/guides/production-build/#node-environment-variable