0
我有一個對象,我正在加入Strophe的每個房間。該對象包含一個處理這個特定房間的存在段的功能。此參考Strophe節處理程序
function Room(name, someData)
this.name = name;
this.someData = someData;
this.presenceHandler = function(presence) {
console.log(this.name, this.someData);
}
this.join = function() {
connection.addHandler(this.presenceHandler,null,"presence",null,null,this.name);
connection.send(/*presence*/);
}
}
var connection = new Strophe.Connection(/*http-bind*/);
var mainRoom = new Room("main", {foo: "bar"});
mainRoom.join();
但當mainRoom.presenceHandler()
功能由節在函數調用通過的strophe,this
指節本身,而不是mainRoom
了,所以我無法從mainRoom
訪問屬性。
你能告訴我,我如何從presenceHandler函數中訪問房間對象的屬性?