Node.js 在package.json中使用变量的完美方式
我有很多角度环境,比如Node.js 在package.json中使用变量的完美方式,node.js,angular,npm,npm-scripts,Node.js,Angular,Npm,Npm Scripts,我有很多角度环境,比如prod,dev,我想在package.json脚本中重用这些信息。 例如,我有一个配置文件“dev”,其中包含: export const environment = { production: false, basePath: 'http://localhost:8001' }; 我想在scripts下的package.json中重用这些信息 "scripts": { "generate-stub": &
prod
,dev
,我想在package.json
脚本中重用这些信息。
例如,我有一个配置文件“dev”,其中包含:
export const environment = {
production: false,
basePath: 'http://localhost:8001'
};
我想在scripts
下的package.json
中重用这些信息
"scripts": {
"generate-stub": "openapi-generator generate -g typescript-angular $basePath"
这样我就可以npm运行generate stub--configuration=dev
有没有办法做到这一点?我完全了解.env和环境变量,但由于angular提供了一种专用的配置方式,因此我更愿意坚持使用它,而不复制逻辑。同时,由于配置文件集有限,CI/CD的混乱更少,出错的机会更少,因此对用户来说会更容易。 但是,我对npm/nodejs完全是新手 有办法吗
谢谢 我认为您可以从js脚本运行此命令,类似于: generator.js
const {exec} = require('child_process');
const config = process.argv.slice(2) // arguments
if(config === 'dev') {
const basePath = enviroment-dev.basePath;
} else {
const basePath = enviroment-prod.basePath;
}
exec(`openapi-generator generate -g typescript-angular ${basePath}`);
在package.json中:
"scripts": {
"generate-stub": "node ./generator.js"
然后您可以使用参数运行命令npm run generate stub--configuration=dev
这段代码没有经过测试,只是为了给你一个想法
成功