假设我的一个模块中有以下代码:
var _this = this;
exports.getData = function(res) {
res.json({someData:'Data'});
};
现在我想在我的模块中创建另一个使用exports
的{{1}}函数。
基本上不知怎的做出这样的事情:
getData
有没有办法做到这一点?除非在节点D中没有意义:
答案 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 =
而无需重构所有其余的代码。