使用requirejs理解Nodejs

时间:2013-12-12 06:26:04

标签: node.js requirejs

我正在阅读在节点中使用requirejs的文档。但我很困惑“将顶级js文件传递给requirejs”.Below是require.js文档的一部分:

var requirejs = require('requirejs');

requirejs.config({
    //Pass the top-level main.js/index.js require
    //function to requirejs so that node modules
    //are loaded relative to the top-level JS file.
    nodeRequire: require
});

这行代码是什么:“nodeRequire:require”是什么意思? 我注释掉这一行并要求在节点上正确运行。

1 个答案:

答案 0 :(得分:1)

在你的第一行,你正在使用require() - node.js的函数。

var requirejs = require('requirejs');

这意味着“真实”功能存储在名为“require”的变量中。您现在将此功能传递给requirejs。

requirejs.config({
    nodeRequire: require
});

您目前位于顶级目录中,例如/path/myproject。现在,如果您需要/path/myproject/lib/another.js内的内容,则会加载相对于/path/myproject而非/path/myproject/lib/another.js的模块。

尝试一下,需要一个子目录中的模块,包括和不包含nodeRequire: require