node.js - 用于传递环境变量的 npm Windows cmd 语法(不被识别为内部或外部命令)

标签 node.js windows npm cmd

在 Windows cmd 上编写此命令行命令的语法是什么。

MY_ENV_VAR=2 npm run my_script

MY_VAR1=100 MY_VAR2=300 npm run my_script

基本上我正在尝试在我的脚本上设置环境变量。

例如,在我的 index.js 中,我有:

const MY_VAR1 = process.env.MY_VAR1 || 200;

每次我在 Windows cmd 上运行此命令时,都会收到“MY_VAR1 未识别为内部或外部命令”。

我在互联网上到处找过 - 这个语法似乎适用于 Mac,但不适用于 Windows cmd。

请告诉我 Windows 上的等效内容。

当然是运行

npm run my_script

运行良好。

最佳答案

我最常看到的两个选项是:

  1. 使用Windows Subsystem for Linux 。这将为您提供一个 shell,可以像在 Linux 上一样设置环境变量。因此 MY_ENV_VAR=2 npm run my_script 可以工作。

  2. 使用cross-env 。然后是cross-env MY_ENV_VAR=2 npm run my_script

关于node.js - 用于传递环境变量的 npm Windows cmd 语法(不被识别为内部或外部命令),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66993337/

相关文章:

javascript - 如果管道在完成之前关闭则删除文件

node.js - 带有包含 native 代码的外部模块的 Node-Webkit

c++ - Win32::SetForegroundWindow() 一直不工作

node.js - npm install packagename --save-dev 不更新 package.json

json - 获取 package.json 文件中另一个字段的值(npm)

php - laravel 6 身份验证 "npm run dev not working"

javascript - 需要帮助将 node.js 连接到 angular.js

mysql - mysql的where子句 Node 没有返回结果集?

ios - UIWebView Windows 身份验证 SWIFT

c# - Win10中的EnumWindows函数只枚举桌面应用