ugrás a tartalomhoz

Archívum - Dec 30, 2012 - Fórum téma

OOP Callback, this?

deejayy · 2012. Dec. 30. (V), 02.09
Sziasztok,

röviden nem tudnám leírni a JavaScript problémámat, bár biztosan van rá valami szakkifejezés, tehát inkább kifejtem:

Kreáltam egy objektumot imigyen:
  1. function myObject(options) {  
  2.   this.myVar = 1;  
  3.   this.someCallback = function (string) {  
  4.     console.log(string + '/' + this.myVar);  
  5.   }  
  6. }  
Az objektum saját magában további objektumot hoz létre, így:
  1. ...  
  2. this.server = new Server();  
  3. ...  
A Server objektum eseménykezelőjébe beillesztek egy bindet:
  1. ...  
  2. this.server.on('message'this.someCallback);  
  3. ...  
A gond ott van, hogy a this.someCallback scope-ja ezután nem a myObject lesz, hanem a Server, amiből nem tudom hogyan kellene kitörnöm (ugye a this.myVar a Server objektumban nincs benne, error).

A kérdés: milyen módszerrel szokás az ilyen helyzeteket megoldani? Van rá valami nyelvi eszköz?

#nodejs