如何在 TypeScript 的回调中设置 类 的 属性?

How to set classes's property in callback in TypeScript?

这是我正在尝试做的事情:

class User {

    name: string;

    userService: UserService; //service which fetches data from server

    successCallback(response: any) {
          this.name = string; 
    }

    setUser() {     
       var xhr: JQueryXHR = this.userService.fetchUser(); //Returns JQueryXHR object
       xhr.then(this.successCallback);
    }
}

现在,当我在 User 实例上调用 setUser 方法时 class:

var user: User = new User();
user.setUser(); 
successCallback 中的

this.name 计算结果为未定义

如何在回调函数中获取class的属性?

这是因为该方法是在 window 上下文中计算的。

结束 xhr.then 调用:

xhr.then(response => {
    this.successCallback(response);
});

=> 将确保 this 引用此 class 的实例。