未读取环境变量 (NPM)

environmental variable not being read (NPM)

所以我有一个项目运行 nodejs,和一个使用多个变量的环境文件。出于某种原因,其中一个似乎不起作用。

这里的代码应该打印出 env 文件应该指定的端口和 namespace/ip

      `==> API is running on port ${process.env.API_PORT}`,
      '\n',
      `==> Send requests to http://${process.env.API_HOST}:${process.env.API_PORT}`

但出于某种原因,它只是找到主机,因为这是控制台实际输出的内容

 ==> API is running on port undefined
 ==> Send requests to http://127.0.0.1:undefined

这是这两个变量的 .env 文件条目

API_PORT=8080

API_HOST=127.0.0.1

到目前为止我找到的唯一指导是我必须包括 require('dotenv').config(); 但这也没有解决任何问题。

什么可能阻止了 API_PORT 变量?

更新:所以当我使用 npm 托管服务器时,它似乎可以工作,但是当我尝试 运行 使用 chai 对其进行代码覆盖时,就会弹出此错误(仍然 npm run test ).

目前快速解决 在你的 package.json

将您的环境放入脚本中

"scripts": {
    "dev": "API_PORT=8080 API_HOST=127.0.0.1 node index.js",
    "test": "your script here"
 },

npm run dev 应该没问题。