我有一个Angular 2应用程序,我从远程服务获取一些数据。我的应用程序分为组件层和服务层。 Services层与后端服务通信。下面发布了一个示例交互:
this.myServiceClass.getData(param1, param2)
.then(res => {
this.responseObj = res;
this.bindDataToGrid();
}
service getData方法返回一个Promise,其中ResponseModel是一个View Model类。
问题在于声明:
this.responseObj = res;
抛出一个错误,声明这是null。 所以我将它设置在服务调用之外,如下所示:
let this$ = this;
并在我的Promise中使用了这个$。然后。有用。 问题是:它正在为我的同事工作而没有重新分配给这个$。对我而言,即使我在我的代码中使用箭头功能,它也无法正常工作。 任何想法为什么我需要在Promise.then之外存储对它的引用?