如何使用Ionic 4从Firebase获得价值

时间:2019-09-08 03:45:20

标签: google-cloud-firestore ionic4

很抱歉问。我只是这里的菜鸟:( 使用Ionic 4 + Firebase只是为了学习,请说我在html上具有一个按钮(单击),并且希望能够获得价值!!!把我的头撞在墙上! 例如:

Firebase DB:
collection "Places"
doc: 
id: 1
name: somename

想要单击按钮,并通过对ID进行硬编码,我要提醒(某人名)

当我单击时,我得到[对象对象],无法进入对象。 代码:

export class Tab4Page implements OnInit {
  lugar: AngularFirestoreCollection<Places>;
  lugares: Observable<Places[]>;
  constructor(private _angFireStore: AngularFirestore) {
    this.lugar = this._angFireStore.collection('Places');
    this.lugares = this.lugar.valueChanges();
  }

  ngOnInit() { }

  //this is the function
  pruebaF1() {
    alert(this.lugares);  //What's next here???!!
  }
}

对不起,我听不懂。

不知道如何进一步深入研究。lugares对ID进行硬编码并只是获得一个值:例如,获取nombre,其中id = 1,然后nombre = somename 如果我说id = 2,那么nombre =该文档在数据库中的名称。

不是角度明智的:(

提前谢谢!!! :)

1 个答案:

答案 0 :(得分:0)

我可以看到您确实在这里尝试。我看到了很多这样的场景,并且总是想知道人们是如何做到这一点的。我很好奇,您是遵循指南还是尝试随机代码?

最好的方法是遵循一些入门教程,这些教程将引导您完成基础知识的每个步骤。先做他们想教您的事情,然后再开始编辑自己的东西,直到发现自己写完整的东西没有问题为止。

This seems like an interesting guideofficial angularfire2 docs

基本上,您会丢失一些概念,而这些概念最好在写得很好的教程中加以解释。到目前为止,您得到的代码是可以观察到的。可以在前端使用这样的东西:

<ul>
  <li *ngFor="let item of lugares | async">
    {{ item.name }} is {{ item.price }} (assuming these properties exist)
  </li>
</ul>

但是您实际上要问的不是这个。您正在编写用于访问集合的代码,但是要获得一个where id = 1类型的查询就是一个文档,它更像是:

this.placeRef = this.afs.collection(''Places'', ref => ref.where('id', '==', '1'));

但是,那仍然使您对之后的处理方法缺少了解。我认为最好的方法是深入研究入门文档。

顺便说一句,firebase实时数据库是您的原始标签,它是旧数据库,并且是一种非常不同的技术,因此,如果您要搜索信息,则需要确保使用正确的“ firestore”搜索字词。