在节点应用程序中,我试图区分应用程序的开发版本和生产版本。运行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

09-19 08:08