Node.js:从导出进行内部调用

时间:2014-09-01 01:12:49

标签: javascript node.js module

假设我的一个模块中有以下代码:

var _this = this;
exports.getData = function(res) {
  res.json({someData:'Data'});
};

现在我想在我的模块中创建另一个使用exports的{​​{1}}函数。 基本上不知怎的做出这样的事情:

getData

有没有办法做到这一点?除非在节点D中没有意义:

1 个答案:

答案 0 :(得分:1)

有几种方法可以做到这一点;最简单的就是简单地将其引用为exports.getData

exports.otherFunction = function(res) {
    return exports.getData(res);
};

您还可以将该功能分配给变量,以便在其他功能中轻松参考。

var getData = exports.getData = function(res) {};

exports.otherFunction = function(res) {
    return getData(res);
};

第一种方法的优点在于,定义函数的顺序并不重要(只要你在定义另一个函数之前不调用依赖于另一个函数的函数)。 / p>

第二个优点是键入的时间更短,如果您以后改变主意并决定不将该功能作为模块的一部分公开,则可以删除exports.getData =而无需重构所有其余的代码。