我有一个用于node.js应用程序的模块。该应用程序还使用socket.io,我想在创建auction对象时将socket.io对象传递给它。
在Node外部进行此操作时可以正常工作,但在内部,我会收到错误“object is not a function”- 我猜测这与module.exports有关,但不确定是什么问题。
有任何建议将不胜感激 - 谢谢!
auction.js
var Auction = function(socket) {
this.data = [];
this.timer = null;
this.socket = socket;
}
Auction.prototype = {
add: function(auction) {
this.data.push(auction);
}
}
module.exports.Auction = Auction;
服务器.js:
var Auction = require('./lib/auction');
var auctions = new Auction(socket);
错误:类型错误:对象不是函数 在Object.CALL_NON_FUNCTION_AS_CONSTRUCTOR(本地)
require('./lib/auction').Auction();
时才能正常工作,有什么想法为什么? - Timrequire('./lib/auction')。Auction
返回一个函数,你必须添加括号调用该函数才能执行它。 - the_haystacker