2014-09-02 77 views
0

这是我的节点REST服务器的应用程序文件夹结构。Nodejs:需要来自server.js之外的其他文件的库

MyApp 
| 
|__node_modules 
| |__lodash 
| 
|__routes 
| |__routes.js 
| 
|__server.js 

在server.js我能够做

var _l = require("lodash"); 

(问题1)

但变量_l不在航线的代码访问,要求loadsh库.js文件。

(问题2)

于是,我就需要lodash从我routes.js,但心不是节点能够解决它的路径。 我试着添加“./”,“../”但它不起作用。

那么,有没有什么办法,如果VAR _L创建server.js可以访问其他地方一样,如果没有,什么是包括除server.js

其他的文件模块(未在根文件夹)的正确方法

回答

1

只需var _l = require("lodash");

节点将搜索模块递归,一路/node_modulesC:\node_modules

+0

因此,这意味着没有必要去尝试“../” ......哦~~ – codin 2014-09-02 02:22:33

+0

从技术上讲,你可以做到这一点,用'要求( '../ node_modules/lodash');',但这是愚蠢和糟糕的形式。 – 2014-09-02 02:23:54

+0

是的。它直接工作,我想知道为什么它错了我第一次直接尝试。这让我问一个问题!但是,谢谢。 – codin 2014-09-02 02:27:19

相关问题