Bir node.js uygulaması için oluşturduğum bir modül var. Uygulama ayrıca socket.io kullanıyor ve ben yarattığımda socket.io nesnesini açık artırma nesnesine aktarmak istiyorum.Node.js nesnesi bir işlev değil - module.exports
Bu, Düğüm dışında yaptığımda çalışır, ancak içimde, 'nesne bir işlev değil' hatasını alırım - benim tahminim bunun, module.exports ile ilgisi var, ama eminim ne yapacağını olmak.
Herhangi bir öneri harika olurdu - teşekkürler!
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;
server.js: Modülü Gerektiğinde Sen 1 mülk Auction
ile bir nesne ihraç edilmektedir
var Auction = require('./lib/auction');
var auctions = new Auction(socket);
Error: TypeError: object is not a function at Object.CALL_NON_FUNCTION_AS_CONSTRUCTOR (native)
Kusursuz - teşekkürler! – dzm
Benim için sadece i 'gerektirir (' ./ lib/açık artırma ') Müzayede(); 'parantez ile, herhangi bir fikir neden? –