List AngularFire2和Ionic2,计算列表和
请帮助我了解如何在ionic中使用AngularFire2计算来自firebase的对象值之和 我试着这样做: 在HTML文件中,我想调用以下函数:List AngularFire2和Ionic2,计算列表和,list,loops,ionic2,angularfire2,List,Loops,Ionic2,Angularfire2,请帮助我了解如何在ionic中使用AngularFire2计算来自firebase的对象值之和 我试着这样做: 在HTML文件中,我想调用以下函数: <ion-col col-1> {{(calculateAverage(student.$key) | async)}} </ion-col> {(calculateAverage(student.$key)| async)} 在.ts文件中,我想做一些类似的事情,获取对象列表,对其进行迭代
<ion-col col-1>
{{(calculateAverage(student.$key) | async)}}
</ion-col>
{(calculateAverage(student.$key)| async)}
在.ts文件中,我想做一些类似的事情,获取对象列表,对其进行迭代,并对子对象的值求和,然后将该值返回到html
我知道如何使用this.af.database.list
获取列表并使用*ngFor在HTML中显示值,但不知道如何在.ts文件中迭代并向HTML返回值,因为这是异步的
firebase数据示例:
“-KhdUCJAyr7Y4Zz3QOnl”:{
“-KigSgGlWyFQao80DuA0”:{
“值”:“30”
},
“-KigTDI3Nue88If0fdYl”:{
“值”:“70”
}
}
有人能帮我吗
提前感谢。您可以在
这个.af.database.list的订阅中进行计算
// suppose you keep the observable
this.items = this.af.database.list('/sample');
// do calculate in observable.subscribe
this.items.subscribe(data => {
data.forEach(item => {
// sum here
calculateSum(item.value);
});
// calculate average here
calculateAverage();
});
如何在templete中计算和显示的示例:
sumValue = 0;
averageValue = 0;
// sum values
calculateSum(value) {
this.sumValue = this.sumValue + parseInt(value);
}
calculateAverage(count) {
this.averageValue = this.sumValue / count;
}
在模板中显示计算结果:
<span>averageValue</span>
平均值
您可以在这个.af.database.list的订阅中进行计算
// suppose you keep the observable
this.items = this.af.database.list('/sample');
// do calculate in observable.subscribe
this.items.subscribe(data => {
data.forEach(item => {
// sum here
calculateSum(item.value);
});
// calculate average here
calculateAverage();
});
如何在templete中计算和显示的示例:
sumValue = 0;
averageValue = 0;
// sum values
calculateSum(value) {
this.sumValue = this.sumValue + parseInt(value);
}
calculateAverage(count) {
this.averageValue = this.sumValue / count;
}
在模板中显示计算结果:
<span>averageValue</span>
平均值
谢谢您的回复,但我如何在异步函数中返回?@jorgeviera您不能从asyn函数返回,但可以对其回调执行您想要的操作。很抱歉,因为我是爱奥尼亚/安格尔的新手。例如,你能告诉我如何在html中使用求和的结果吗?@JorgeVieira我给出了更新的答案,包括一个例子。噢,谢谢@Pengyy。我将在这里尝试,看看是否有效。谢谢您的回复,但我如何在异步函数中返回?@JorgeVieira您不能从asyn函数返回,但可以对其回调执行您想要的操作。很抱歉,因为我不熟悉离子/角度。例如,你能告诉我如何在html中使用求和的结果吗?@JorgeVieira我给出了更新的答案,包括一个例子。噢,谢谢@Pengyy。我会在这里试试看是否有效。