【问题标题】:How do I pass through an envrionment variable via npm script?如何通过 npm 脚本传递环境变量?
【发布时间】:2021-06-28 21:35:08
【问题描述】:

这是我当前的 package.json

{
  "dependencies": {
    "cypress": "^6.8.0",
    "cypress-tags": "^0.0.21",
    "typescript": "^4.2.3"
  },
  "scripts": {
    "cy:run": "./node_modules/.bin/cypress run",
    "cy:dev": "CYPRESS_INCLUDE_TAGS=DEVELOP ./node_modules/.bin/cypress run"
  }
}

当我运行 cy:dev 我得到这个错误:

'CYPRESS_INCLUDE_TAGS' is not recognized as an internal or external command,
operable program or batch file.

但是,如果我复制并粘贴确切的脚本并直接在 CLI 中运行它,它就可以正常工作。

有没有办法通过 NPM 脚本传递一个临时环境变量?

我认为这可以在 Mac/Linux 系统上运行,但我需要它跨平台运行。

【问题讨论】:

    标签: node.js windows automation environment-variables cypress


    【解决方案1】:

    通过使用 npm 包设法解决了这个问题。

    {
      "dependencies": {
        "cross-env": "7.0.3",
        "cypress": "6.8.0",
        "cypress-tags": "0.0.21",
        "typescript": "4.2.3"
      },
      "scripts": {
        "cy:run": "cross-env CYPRESS_INCLUDE_EXCLUDE=IGNORE ./node_modules/.bin/cypress run",
        "cy:dev": "cross-env CYPRESS_INCLUDE_TAGS=DEVELOP ./node_modules/.bin/cypress run"
      }
    }
    

    这也适用于跨平台。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-02-06
      • 2019-02-08
      • 1970-01-01
      • 2016-03-01
      • 2020-09-09
      • 2016-09-05
      • 2023-03-09
      相关资源
      最近更新 更多