标签: node.js npm commonjs
npm上的许多软件包似乎以下列方式使用require函数:
var CounterActions = require('../actions/counter');
而不是:
var CounterActions = require('mypackage/actions/counter');
为什么?我看不到上行空间,这使得将文件移动到另一个位置非常困难。此外,由于您不知道要求引用的内容(例如require("../../../../../../index.js"))
require("../../../../../../index.js")
答案 0 :(得分:1)
因为您不能在没有相对路径的情况下需要不在node_modules文件夹中的内容。
node_modules
格式:var CounterActions = require('mypackage');是为node_modules文件夹中的包保留的。
var CounterActions = require('mypackage');
有些人已经实施了NPM模块来克服这个问题。以下是其中之一:rootpath
您可以找到许多其他解决方案here,但NPM模块似乎是最简单的。