bambo Growth Ответов: 0

Reference.push failed: первый аргумент содержит неопределенное свойство


Я пытаюсь отправить два данных (itemName и itemAmout) в базу данных firebase, но это дает мне эту ошибку:
Цитата:
Ошибка: Reference.push failed: первый аргумент содержит неопределенное значение в свойстве 'shoppingItem.itemName'

Я не знаю, откуда взялась эта проблема.
Вот мой код :

метод addItem.ТС :
import { Component } from '@angular/core';
    import { IonicPage, NavController, NavParams } from 'ionic-angular';
    import {ShoppingItems} from '../../models/items.interface';
    import { AngularFireDatabase } from   'angularfire2/database';

    import { AngularFireList } from 'angularfire2/database'; 

    @IonicPage(

      {
        segment :'shoppingList/Add-Item'
      }
    )
    @Component({
      selector: 'page-add-item',
      templateUrl: 'add-item.html',
    })
    export class AddItemPage {

    shoppingItem ={} as ShoppingItems ;
    shoppingListRef$ :AngularFireList<ShoppingItems>;


      constructor(public navCtrl: NavController, public navParams: NavParams,
         private adb:AngularFireDatabase) {

          this.shoppingListRef$=adb.list('/shoppingItem');

      }

      addItem(shoppingItem:ShoppingItems){
        this.shoppingListRef$.push({

          itemName: this.shoppingItem.itemName ,
          itemAmount : Number(this.shoppingItem.itemAmount)  

        });

        //this.shoppingItem={} as ShoppingItems;
        this.navCtrl.pop();

      }

    }


предметы.интерфейс.ТС :
export interface ShoppingItems {
    itemName : string ;
    itemAmount : number;

}

addItem.html:
<ion-header>

  <ion-navbar color="dark">
    <ion-title>Add Item</ion-title>
  </ion-navbar>

</ion-header>


<ion-content padding>
<ion-item>
  <ion-label floating>
    item  name
  </ion-label>
  <ion-input type="text" ([ngModel])="shoppingItem.itemName"></ion-input>
</ion-item>

<ion-item>
    <ion-label floating>
      item  amount
    </ion-label>
    <ion-input type="number" ([ngModel])="shoppingItem.itemAmount"></ion-input>
  </ion-item>

<button ion-button block (click)="addItem(shoppingItem)">Add item</button>
</ion-content>


Что я уже пробовал:

Я пытался использовать это решение, но то, что он только забирает сообщение об ошибке, не отправляя данные в мою базу данных firebase.

0 Ответов