npm模块的最佳实践

时间:2018-01-15 22:46:03

标签: node.js npm npm-install

我有一个需要一些共享代码的项目,我们基本上有两种类型的客户端API和一些类似的功能,称之为client1client2。我们有一个项目有4个目录,每个客户端一个,api-common和api-logic的库目录。每个人都有自己的package.json及其各自的依赖关系,client1client2包含以下内容:

"api-common": "file:../libs/api-common",
"api-logic": "file:../libs/api-logic",

目前,这些模块中的每个模块都包含一个构建脚本,该脚本使用babel转换为EC2015:

"build": "babel src -d dist",

出于某种原因,npm install显得片状。有时,我们发现npm install项目下的api-logic项目(取决于api-common)会失败:

npm ERR! path /home/user/workspace/server/libs/api-logic/node_modules/.staging/minimist-bb10354d
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall rename
npm ERR! enoent ENOENT: no such file or directory, rename '/home/user/workspace/server/libs/api-logic/node_modules/.staging/minimist-bb10354d' -> '/home/user/workspace/server/libs/api-common/node_modules/rc/node_modules/minimist'
npm ERR! enoent This is related to npm not being able to find a file.

这对我来说并没有多大意义。我已在npm install内运行api-common。它装好了。我可以看到api-common/node_modules/rc/node_modules/minimist存在。有没有更好的方法呢?出于某种原因,我觉得在构建client1client2之前我不应该运行babel。

非常感谢npm模块中代码共享最佳实践的任何帮助。我对npm很新,所以请假设没有什么是明显的:)

0 个答案:

没有答案