我一直在使用 npm 脚本为前端开发人员开发一个构建系统,并且scripts
在package.json
. 这些包括典型的任务,例如:缩小 css、代码 linting、生成文档、转译 JavaScript……等等。
定义的所有脚本任务都通过 CLI 执行命令来达到预期的结果,例如$ npm run build
, $ npm run docs
...$ npm run watch
为了测试在全新安装所需的节点包后可以成功复制构建系统,我这样做:
- 复制项目目录。
node_modules
从重复的项目目录中删除该文件夹。- 通过在重复的项目目录中执行全新安装
$ npm install
。
正如预期的那样,这会devDependencies
根据package.json
.
但是,在运行了npm install
一些新的脚本任务后,定义了诸如:$ npm run watch
不再从受骗项目中成功工作。
进一步调查显示,没有。重复项目目录的“node_modules”文件夹中列出的顶级包(即全新安装后的那个)比成功运行任务的原始项目目录少了大约 30 个。缺少的所有软件包似乎都是我安装的软件包所依赖的子依赖项。
此外,当$ npm list
通过 CLI 运行时,在原始项目目录和复制的项目目录(即全新安装的目录)中列出的包不同。
所以,我现在处于一个位置,如果不包含node_modules
文件夹(及其内容),我就无法共享项目目录。理想情况下,我想与其他开发人员共享样板代码,他们只需cd
到项目目录并$ npm install
自行运行。
我将不胜感激有关如何解决此问题的任何建议。这不是我以前遇到过的。
提前致谢。