Node.JS导出函数没有对象封装

我正在查看Node.JS请求,并注意您可以使用

var request = require('request'); request(...) 

但是,当我尝试做类似的模块,我尝试

 exports = function() {} 

这是行不通的。 我知道使用的唯一方法是

 var request = require('request').request; request(...) 

 exports.request = function() {} 

如何将整个导出设置为一个函数,而不是将函数添加到导出对象?

请求源代码中可能提供了一个提示,但是我发现很难弄清楚发生了什么事情。 你能帮我吗?

你需要覆盖它

module.exports = function() {}

仅仅写出exports = function() {}会创build一个新的局部variables,称为exports,并隐藏生活在module.exportsexportsvariables