Node.js 为什么npm包经常使用require的相对路径(例如../../file)?

Node.js 为什么npm包经常使用require的相对路径(例如../../file)?,node.js,npm,commonjs,Node.js,Npm,Commonjs,npm上的许多包似乎以以下方式使用require函数: var CounterActions = require('../actions/counter'); 与此相反: var CounterActions = require('mypackage/actions/counter'); 为什么呢?我看不到任何好处,而且很难将文件移动到其他位置。另外,由于您不知道require所指的是什么(例如,require(../../../../../../../../../index.js”)),因

npm上的许多包似乎以以下方式使用require函数:

var CounterActions = require('../actions/counter');
与此相反:

var CounterActions = require('mypackage/actions/counter');

为什么呢?我看不到任何好处,而且很难将文件移动到其他位置。另外,由于您不知道require所指的是什么(例如,
require(../../../../../../../../../index.js”)

,因为您无法要求不在
节点模块
文件夹中且没有相对路径的内容

格式:
var抵消=require('mypackage')
是为
节点模块
文件夹中的包保留的

一些人已经实现了NPM模块来克服这个问题。以下是其中之一:


您可以找到许多其他解决方案,但NPM模块似乎是最简单的。

有一些方法可以做到这一点:答案很简单。大多数人认为不值得再安装一个模块来实现你想要的方式(或者不知道这是可能的,或者不在乎)