如何将提取的数据从后端服务推送到打字稿中类中的声明属性中



我正在设置一个 Angular 服务来从 API 检索虚拟数据并将前 3 个元素推送到 TypeScript 类属性,但我收到此错误:未捕获(在承诺中):类型错误:无法读取未定义的属性"组"

利用fetch方法和for循环,我尝试将前 3 个返回的对象推送到类中声明的空属性,但是,在尝试推送数据时出现错误。我无法看到问题的原因。

export class DishService {
  group = [];
  constructor() {     
  }
  fetchIt() {
    fetch('https://jsonplaceholder.typicode.com/todos')
    .then(response => response.json())
    .then(function(json){
      for(var i = 0; i<3; i++){
        console.log(json[i])
        this.group.push(json[i])
      }
    })
  }
}

错误说"this"是未定义的,这是因为"this"指的是包含正在调用的方法的对象,在您的情况下 - "then",而不是DishService类。

您可以按照此处的建议使用箭头函数:为什么在使用 promise 时,类方法中未定义"this"?

最新更新