我有一个库,我想通过发布到npm之前在本地进行完整安装来对其进行测试。我要测试的一件事是,是否所有依赖项都属于项目。由于nodejs如何构造其模块系统,因此(a nodejs module is searched for at every directory level)我没有一个很好的方法来确保所需的模块来自当前文件夹的node_modules,而不是父文件夹的node_modules。
这是项目结构:
library-folder/
package.json
node_modules/
testing/integration/
package.json
node_modules/
test-install.js
我想知道是否有一种方法可以告诉nodejs仅要求当前目录中的模块,而忽略任何父目录。
最佳答案
我没有很好的方法来确保我需要的模块来自当前文件夹的node_modules,而不是父文件夹的node_modules。
为此,您可以使用require.resolve
并检查其返回的路径。