我有这样的文件夹结构:
file1.js和file2.js需要相同的软件包X,但版本不同。 (文件1需要X@1.0,文件2需要X@2.0)。这些软件包还共享多个具有相同名称的子软件包。
file1.js在内部调用file2.js。这样做时,file1.js使用root / node_modules /并导致错误,因为file2.js需要使用root / folder1 / node_modules /。
当使用cli从folder1内部执行file2.js时,效果很好。
有没有一种方法可以限制代码仅使用特定的“ node_module”文件夹?
答案 0 :(得分:0)
是的,您可以使file2.js
进入其自己的node_modules
文件夹。
在file2.js
中,您可以指定目标node_modules
,而不是通常的模块要求:
// file2.js
const X = require('./node_modules/X');