我担心如果我的需求模块改变了路径,我需要更新所有必需的路径!! (在java中不会发生的事情)
MyModule.js 要求( './ LIB')
现在MyModule现在需要更改目录
require('../../lib')
无论如何要从项目根目录指定require路径?
require('/lib')
如果我缺少格式化,我会从手机上写这个。
答案 0 :(得分:3)
在运行节点应用程序之前,首先运行:
Linux: export NODE_PATH=.
Windows: set NODE_PATH=.
您可以在npm启动脚本中添加它,因此,您可以轻松自动化它。
示例:强>
<强> Directory tree
强>
my_example/
├── lib
│ ├── a
│ │ └── index.js
│ └── b
│ └── index.js
├── package.json
└── server.js
文件内容:
<强> package.json
强>:
{
*
*
"scripts": {
"start": "export NODE_PATH=./lib/;node server.js"
},
*
*
}
<强> ./lib/a/index.js
强>:
console.log("hi from module a");
require("b/index");
<强> ./lib/b/index.js
强>:
console.log("hi from module b");
<强> ./server.js
强>:
require("a/index");
运行npm start
时的输出:
hi from module a
hi from module b