我们正在研究nodeJs/ExpressJs
,我们已经配置了多个.env文件用于开发和生产,并将其指向package.json
以用于不同的执行过程,我们在脚本中命名了会话问题。
只要我们运行npm run prod
,就需要进行preprod
配置。可能是什么问题?
更新:我们发现下一个脚本中的脚本键后缀相同,将preprod
更新/重命名为preProd
后,两者都可以正常运行。但是为什么呢?
例如:
"scripts": {
"dev": "clear; env-cmd -f ./config/hostedDev.env nodemon --exec babel-node index.js",
"prod": "clear; env-cmd -f ./config/prod.env nodemon --exec babel-node index.js",
"preprod": "clear; env-cmd -f ./config/preprod.env nodemon --exec babel-node index.js"
},
答案 0 :(得分:1)
显然,问题在于单词“ pre”。
如果您发现它同时运行preprod和prod命令(先运行pred)。
如果将脚本名称更改为'postprod',则postprod脚本将在以后运行。
因此,我猜npm在运行'prod'脚本之前先使用'pre',然后再运行'prod'脚本本身。