У меня есть проблема, которая все еще беспокоит меня на js oop -. Я уверен, что делаю это плохо, но я не могу понять, как это сделать правильно.
Например, у меня есть этот код
Auth.prototype.auth = function () {
var request = new XMLHttpRequest();
request.open('GET', this.getAuthServerURL() + '/token', true);
request.send();
request.onloadend = function () {
var response = JSON.parse(request.responseText);
console.log(response);
if(response.result == 'found') {
var token = response.token;
this.setToken(token);
this.isSigned = true;
} else {
console.log('Not logged yet.');
}
}
}
Проблема в том, что я не могу получить доступ к функции setToken из контекста функции «request.onloadend» -, вероятно, потому, что я потерял ссылку на «это».
Какое решение этой проблемы? Могу ли я как-то передать «эту» переменную в контекст этой функции?
Спасибо!