我正在学习NodeJS的教程。我不认为我错过了任何东西,但每当我调用process。env。NODE_ENV返回的唯一值是undefined。根据我的研究,默认值应该是development。该值如何动态设置,初始设置在哪里?
当前回答
必须是app.js中的第一个要求
npm install dotenv
require("dotenv").config();
其他回答
的过程。Env是对环境的引用,所以你必须在那里设置变量。
使用实例设置Windows环境变量。
SET NODE_ENV=development
在macOS / OS X或Linux上:
export NODE_ENV=development
对于使用*nix (Linux, OS X等)的人来说,没有理由通过第二个导出命令来执行它,你可以将它作为调用命令的一部分:
NODE_ENV=development node server.js
更容易,不是吗?:)
如果你在React中遇到这个问题,你需要react-scripts@0.2.3和更高的版本。此外,对于NODE_ENV以外的其他环境变量,它们需要使用REACT_APP_作为前缀。
在macOS中,对于使用快速版4.x的用户。使用DOTENV插件,需要像这样使用:
在初始化应用程序的文件中安装插件导入后,如下所示: 要求(“dotenv”)。配置({路径:path.resolve (__dirname + / .env)}); 在根目录中创建一个文件'。Env '并添加如下变量: NODE_ENV =发展 或 NODE_ENV = development
我们在Windows上使用node时遇到了这个问题。
我们没有要求任何试图运行应用程序的人设置这些变量,而是在应用程序中提供了一个备用方案。
var environment = process.env.NODE_ENV || 'development';
在生产环境中,我们将根据通常的方法(SET/export)定义它。