文件结构如下所示:
([] = something)
我正在尝试将'deploy-abc'安装为主文件夹应用程序中的模块。所以,我跑了:something
。它安装正确&我可以在package.json中看到'deploy-abc'依赖关系。
但是,当我尝试访问deploy-abc的导出对象时,我收到节点错误= (main-folder)
- package.json
- ...
= server
- index.js
- ...
= deploy-abc // new server
= src
- index.js
= src
- index.js
- ...
。例如:在主文件夹的某个文件中:
yarn add "/var/www/main-folder/deploy-abc"
我哪里错了?
答案 0 :(得分:2)
根据节点文档:isna
如果传递给require()的模块标识符不是核心模块,并且不以'/','.. /'或'./'开头,那么Node.js从该目录的父目录开始当前模块,并添加/ node_modules,并尝试从该位置加载模块。
因此,当您的模块现在位于主文件夹中时,您的需求将取决于相对位置。如果您要求const deployAbc = require('../deploy-abc')
,那么您将需要:
index.js
在这种情况下,您也不需要指定实际文件,因为它默认为dabc.js
。但是,如果输入文件是{{1}}或其他内容,则还需要在该位置指定。
答案 1 :(得分:1)
您可能必须使用确切的相对路径。例如,const deployAbc = require("../deploy-abc")