在做npm包需要的时候,包名中是什么意思?

当“需要”非本地NodeJS模块时,模块名称中的斜杠的含义是什么?

例:
从ShellJS npm模块的github页面(链接: https : //github.com/shelljs/shelljs#javascript )

require('shelljs/global');
require('shelljs/make');

在查看ShellJS github项目的目录结构时,我注意到global.jsmake.js都与shell.js是相同的级别,这是module.json模块的主要入口点。 那么斜杠是什么意思,在上面的例子中是如何解决“全局”和“做”的path?

斜线(作为主要用途)仅仅用于文件path。

require('shelljs/global')会加载global.js文件的脚本。

require('shelljs/make')会加载make.js文件的脚本。

但是, require('shelljs')会加载shell.js脚本。 为什么? 让我们来看看package.json的内容:这是"main": "./shell.js" ,它使魔术"main": "./shell.js"了魔术。