ERROR TypeError: Cannot read property 'doc' of undefined

ERROR TypeError: Cannot read property 'doc' of undefined

我是 angular 的新人,我真的需要帮助,在此先感谢 发生文本错误是:ERROR TypeError: Cannot read 属性 'doc' of undefined app.ts

  getTask() {
    this.ticketService.getTask(this.id).valueChanges({ idField: 'id' }).subscribe(task => {
      this.depositTasks = task
      task.map(items => {
        console.log(items);
        for (let i = 0; this.depositTasks.length > i; i++) {
          const item = items.payload.doc.data()
          item['$uid'] = items.payload.doc['id'];
          this.Task.push(item as Tasks)
        }
      })
    })
  }

尝试将您的代码更新为:

getTask() {
    this.ticketService
        .getTask(this.id)
        .valueChanges({ idField: 'id' })
        .subscribe(task => {
            task.map(items => {
                console.log(items);
                const item = items;
                item['$uid'] = items['id'];
                this.Task.push(item as Tasks);
            })
        })
}

您正在尝试访问不属于对象的变量,因此 undefined 错误。

请尝试像下面这样修改您的代码,

getTask() {
    this.ticketService.getTask(this.id).valueChanges({ idField: 'id' }).subscribe(task => {
      this.depositTasks = task;
      this.Task = [ ];
      task.forEach(items => {
        console.log(items);
        let item: any = {};
        item['$uid'] = items.id;
        this.Task.push(item as Tasks);
      });
  });

快乐编码..:)