如何在 package.json 内的 npm 脚本中使用 SECRET_ENV?

dea*_*904 6 javascript environment-variables node.js secret-key

我有一个名为的秘密密钥API_KEY,我想访问package.json's的内部scripts

包.json

{
   "scripts": {
      "start": "web-ext run --api-key=API_KEY"
   }
}
Run Code Online (Sandbox Code Playgroud)

我的.env文件包含API_KEY

API_KEY=abc123
Run Code Online (Sandbox Code Playgroud)

API_KEY我如何才能访问insidepackage.json的值,scripts同时仍然保密,因为我需要公开推送package.json

目前,我执行以下操作,但不能跨平台:

包.json

{
   "scripts": {
      "start": "web-ext run --api-key=$API_KEY"
   }
}
Run Code Online (Sandbox Code Playgroud)

当运行start脚本时,我这样做:

API_KEY=abc123 npm start
Run Code Online (Sandbox Code Playgroud)

这要归功于 Bash 编程语言,但它不适用于 Windows。我需要$API_KEYstart脚本中替换为%API_KEY%. 但我希望它是跨平台的。还有其他办法吗?

小智 -1

您只需需要“dotenv”lib,并从 process.env.{SOME_KEY} 访问 var