角火读取单个文档不起作用

问题描述

我尝试了两种从firestore中读取单个文档的版本。我在页面集合中有四个文档,id = home,page1,page2和page3。对于这两个版本,第1页和第3页都可以读取,但对于home和page2我却没有定义。为什么?

版本1:

//post.service.id
fetchPage(pageno: string) {
  return this.firestore.doc<Page>(`pages/${pageno}`);
}

// post.component.ts
...
    this.postService.fetchPage(file).ref.get().then((doc)=> {
      let page = doc.data();
      console.log(page); // got undefined in some cases
      this.content = page.content;
      this.title = page.title;
      this.subTitle = page.subTitle;
      this.backLink = page.backLink;
    });

版本2:

//post.service.id
fetchPage2(pageno: string) {
  console.log(`pages/${pageno}`);
  return this.firestore.doc<Page>(`pages/${pageno}`).valueChanges();
}

// post.component.ts
...
    this.postService.fetchPage2(file).subscribe((page: Page) => {
        console.log(page); // got undefined in some cases
        this.content = page.content;
        this.title = page.title;
        this.subTitle = page.subTitle;
        this.backLink = page.backLink;
        });

所有文档在Firebase控制台中可见。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)