类型[[]]中缺少Angular7'length'

时间:2019-04-04 11:23:40

标签: angular google-cloud-firestore angularfire2

我正在提取一些具有简单值的数据并在页脚中显示 并得到这个。

  

src / app / layout / customer / customerform / customerform.component.ts(25,7)中的错误:错误TS2322:类型'Footer'无法分配给类型'Footer []'。     类型“页脚”缺少属性“长度”。

Component.ts

  footers: Footer[];

  ngOnInit() {
    this.getFooter();
    console.log(this.footers);
  }

  getFooter() {
    this.bone.getFooter().subscribe( actions => {
      this.footers = actions.payload.data() as Footer;
    });
  }

model.ts

export interface Footer {
  id?: string;
  color?: string;
  bg?: string;
  text?: string;
}

service.ts

 getFooter() {
    return this.footerCollection.doc("style").snapshotChanges();
  }

1 个答案:

答案 0 :(得分:1)

您需要将投射方式从Footer更改为Footer[]

this.footers = actions.payload.data() as Footer[];

您需要初始化footers以免出现undefined错误:

footers: Footer[] = [];