代替require相对的代码,即以./或开始..,我想定义一个"全局"模块.例如,采用以下包结构:
/src
/index.js
/a.js
/b.js
/lib
/index.js
...
Run Code Online (Sandbox Code Playgroud)
在进入src/a.js或src/b.js要求时lib,我require('../lib')每次都要做.当你开始筑巢更多,你将不得不手动解决这很烦人../lib或../../lib或../../../lib.
我希望能够做到require('lib').我可以这样做吗?或者我应该使用全局变量?
将模块放在 node_modules 中不需要包含路径或相对路径
编辑:
如果将名为 package.json 的文件放入模块目录中,Node 将尝试解析该文件并查找并使用 main 属性作为入口点的相对路径。例如,如果您的
./myModuleDir/package.json
文件如下所示,Node 将尝试使用路径加载文件
./myModuleDir/lib/myModule.js
:
{
"name" : "myModule",
"main" : "./lib/myModule.js"
}
Run Code Online (Sandbox Code Playgroud)
如果该文件夹不包含名为 package.json 的包定义文件,则包入口点将采用默认值 index.js,在这种情况下,Node 将查找路径 ./myModuleDir/index 下的文件。 js。
| 归档时间: |
|
| 查看次数: |
357 次 |
| 最近记录: |