2017-08-09 80 views
0

我能够得到的HTML之正确与以下代码:在HTML中计算的总和正确,但未保存到Firebase?

<ion-item type="text" formControlName="billValue" 
[(ngModel)]="retailerItemModel" name="billValue" ngDefaultControl >Total 
Bill Value Rs. {{ totalValue(retailerItemModel) || 0 | number: '1.2-2' }} 
</ion-item> 

我使用火力地堡将数据与AngularFire服务提供商保存:

saveBill(billValue: any =[],): firebase.Promise<any>{ 
    return this.afDatabase.list(`userProfile/${this.userId}/billList/`).push({ 
    billValue   
    }) 
} 

的问题是保存火力点后数据示出了数组:

enter image description here

我想选择的值的总和来显示没有t时的阵列...有没有办法做到在HTML本身或控制器选择的值的计算...以下是控制器公式:

totalValue(retailerItemModel: any=[]){ 
    let total = 0; 
    retailerItemModel.forEach((item) => { 
    total += Number(item); 
    }) 
    return total; 
} 

请建议之前,我碰坏... :)

回答

1

尝试像这样:

saveBill(billValue: any =[],): firebase.Promise<any>{ 
    return this.afDatabase.list(`userProfile/${this.userId}/billList/`).push({ 
    billValue: totalValue(billValue)  
    }) 
} 

目前,你正在保存数组。

+0

不工作...'TypeError:this.totalValue不是函数' – Disu

+0

@Disu我建议你可以访问totalValue函数,或者创建一个类似的函数来获取总数。但是,值得避免重复代码。 –

+1

噢,我的我的...只有当你知道它后,才会非常简单明显......谢谢@camden_kid – Disu