是否可以从 package.json 脚本设置 dotenv 变量?
Is it possible to set a dotenv variable from package.json script?
我在我的项目中使用 dotenv 从 .env 文件中获取变量。我希望能够在 运行 npm test
时在 package.json 的 .env(dotenv) 文件中设置一个值。类似于此:
"scripts": {
"test": "set ENV=test mocha './test/**/*.spec.js'",
"start": "node app"
}
我的 .env 文件就是这样:
ENV = development
我正在使用 windows。
在此先感谢您的帮助!
是的,你可以这样做,你也可以通过命令传递 environment variables
。
即使用您的脚本:-
"scripts": {
"test": "set ENV=test mocha './test/**/*.spec.js'",
"start": "ENV=test node app.js" //NOTICE I HAVE CHANGED THIS.
}
只是使用而已,不知道如何帮助测试脚本,我不明白,但我相信它一定是这样的
"test": "ENV=test mocha './test/**/*.spec.js'"
您可以使用
"test": "ENV=test mocha './test/**/*.spec.js'"
在 Linux 上的 npm 脚本中,并使用
"test": "set ENV=test&&mocha './test/**/*.spec.js'"
于 Windows。
顺便说一句,如果你需要跨平台,使用cross-env这样你的代码就可以在Windows和Linux.
上运行
你也可以使用 require.
例如,您有一个 ./test/test.env.js
// test/test.env.js
process.env.ENV = 'test';
并在您的 npm 脚本中使用 require
,如下所示:
"test": "mocha --require 'test/test.env.js' './test/**/*.spec.js'"
我在我的项目中使用 dotenv 从 .env 文件中获取变量。我希望能够在 运行 npm test
时在 package.json 的 .env(dotenv) 文件中设置一个值。类似于此:
"scripts": {
"test": "set ENV=test mocha './test/**/*.spec.js'",
"start": "node app"
}
我的 .env 文件就是这样:
ENV = development
我正在使用 windows。 在此先感谢您的帮助!
是的,你可以这样做,你也可以通过命令传递 environment variables
。
即使用您的脚本:-
"scripts": {
"test": "set ENV=test mocha './test/**/*.spec.js'",
"start": "ENV=test node app.js" //NOTICE I HAVE CHANGED THIS.
}
只是使用而已,不知道如何帮助测试脚本,我不明白,但我相信它一定是这样的
"test": "ENV=test mocha './test/**/*.spec.js'"
您可以使用
"test": "ENV=test mocha './test/**/*.spec.js'"
在 Linux 上的 npm 脚本中,并使用
"test": "set ENV=test&&mocha './test/**/*.spec.js'"
于 Windows。
顺便说一句,如果你需要跨平台,使用cross-env这样你的代码就可以在Windows和Linux.
上运行你也可以使用 require.
例如,您有一个 ./test/test.env.js
// test/test.env.js
process.env.ENV = 'test';
并在您的 npm 脚本中使用 require
,如下所示:
"test": "mocha --require 'test/test.env.js' './test/**/*.spec.js'"