本以为会有2个参数,但却得到了1个从ionic更新firebase的参数。

问题描述 投票:1回答:1

我在尝试从ionic更新firebase时遇到了一个问题。以下是我尝试更新数据时的函数。

下面是类型脚本

updateLaporan()
  {
    this.id = this.fire.auth.currentUser.uid;
    this.db.list('/laporan/'+this.id).update({
      mydate : this.mydate.value,
      porsiKarbohidrat : this.porsiKarbohidrat.value,
      porsiProteinHewani : this.porsiProteinHewani.value,
      porsiProteinNabati : this.porsiProteinNabati.value,
      porsiLemak : this.porsiLemak.value,
    })

    this.alert("Sukses update data")
  }

这是编辑数据的html,我试着用viewchild把值传过去,然后在ts上接收。

<ion-content padding>
    <ion-list>
        <ion-datetime displayFormat="MMM DD YY" [(ngModel)]="myDate" #mydate></ion-datetime>

        <ion-item>
          <ion-label floating>Porsi Karbohidrat</ion-label>
          <ion-input type="number" #porsiKarbohidrat></ion-input>
        </ion-item>

        <ion-item>
          <ion-label floating>Porsi Protein Hewani</ion-label>
          <ion-input type="number" #porsiProteinHewani></ion-input>
        </ion-item>

        <ion-item>
          <ion-label floating>Porsi Protein Nabati</ion-label>
          <ion-input type="number" #porsiProteinNabati></ion-input>
        </ion-item>

        <ion-item>
            <ion-label floating>Porsi Lemak</ion-label>
            <ion-input type="number" #porsiLemak></ion-input>
          </ion-item>

  </ion-list>
  <button ion-button full (click)="updateLaporan()">Update</button>
angular typescript firebase
1个回答
0
投票

这是因为你试图更新对象,但使用的是 this.db.list 而不是。

updateLaporan()
  {
    this.id = this.fire.auth.currentUser.uid;
    this.db.object('/laporan/'+this.id).update({
      mydate : this.mydate.value,
      porsiKarbohidrat : this.porsiKarbohidrat.value,
      porsiProteinHewani : this.porsiProteinHewani.value,
      porsiProteinNabati : this.porsiProteinNabati.value,
      porsiLemak : this.porsiLemak.value,
    })

    this.alert("Sukses update data")
  }
© www.soinside.com 2019 - 2024. All rights reserved.