2011-05-03 11 views
30

estoy mirando Node.JS request y noto que se puede utilizarNode.JS función de exportación sin envoltorio objeto

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

Pero cuando trato de hacer algo similar como en el módulo Trato

exports = function() {} 

No funciona. La única manera que conozco para usar es

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

y

exports.request = function() {} 

¿Cómo puedo configurar toda la exportación a una función en lugar de añadir una función al objeto de exportación?

Puede haber una pista disponible en el request source code pero me resulta difícil averiguar qué está pasando. ¿Puede usted ayudar?

Respuesta

53

necesita sobrescribir como

module.exports = function() {}

Simplemente escribiendo exports = function() {} crea un nuevo variables locales llamados exportaciones y esconde la variable exports de estar en module.exports

Cuestiones relacionadas