在package.json中(假设它是在 Scripts 文件夹中定义的),我的脚本定义如下:
"scripts": {
"install:prod": "npm i"
}
如果我从 Scripts 文件夹运行此脚本,则一切正确,仅创建了node_modules。但是,当我从父文件夹运行脚本时,会收到奇怪的输出。 例如,当我跑步时:
npm run install:prod --prefix ./WebApp/Scripts
etc 文件夹和来自node_modules的许多文件命令放在 Scripts 文件夹
Mode Length Name
d----- etc
d----- node_modules
d----- src
------ 123 .babelrc
-a---- 321 acorn
-a---- 198 acorn.cmd
-a---- 337 ansi-html
-a---- 214 ansi-html.cmd
-a---- 323 atob
-a---- 200 atob.cmd
-a---- 329 browserslist
-a---- 206 browserslist.cmd
-a---- 325 cssesc
... and much more
这是期望的行为吗?我如何在没有 etc 和其他不必要的文件(对我来说)的情况下从父文件夹构建node_modules,就像运行普通的npm install
答案 0 :(得分:0)
生产构建脚本正在另一台服务器上运行,因此所有npm脚本均被阻止。将网络路径更改为物理路径(命令:pushd \\serverpath
)后,我们可以更改目录并自由运行npm。 cd Scripts && npm run install
完成了工作。