Das bin ich heute verlangsamt hat ....Angular2 Komponente Methode liefert NaN trotz type casting
Ich habe die folgende Methode in einer Komponente:
utility(prop:string):number {
let ob:number;
this.meals.map(something => {
something.items.map(item => {
ob += item.info[prop];
console.log(prop, item.info[prop]);
});
});
return ob;
}
Dies sind einige der Möglichkeiten, ich dies nennen Funktion:
<div class="label head">Total Fat
<div id="totalFat"
class="weight total_fat_na">
{{ fatStats().totalFat | number : "1.0-1"}}g
</div>
</div>
<div id="totalFatP"
class="dv total_fat_na_p">
{{ fatStats().totalFatDV | number : ".0-0" }}%
</div>
<div class="labellight">Saturated Fat
<div id="totalSatFat"
class="weight saturated_fat_na">
{{ fatStats().totalSatFat | number : ".0-0" }}g
</div>
</div>
<div id="totalSatFat"
class="dv saturated_fat_na">
{{ fatStats().totalSatFatDV | number : ".0-0" }}%
</div>
012:
fatStats(){
let total_fat: number = 0;
let total_sat_fat: number = 0;
return {
totalFat: total_fat = this.utility('fat'),
totalFatDV: (total_fat/allowedFat) * 100,
totalSatFat: total_sat_fat = this.utility('satfat'),
totalSatFatDV: (total_sat_fat/allowedSatFat) * 100,
totalPolyFat: this.utility('polyfat'),
totalMonoFat: this.utility('monofat'),
totalTransFat: this.utility('transfat')
}
}
Die fatStats Methode aus meiner Sicht Vorlage aufgerufen wird
Die console.log zeigt korrekte Eigenschaften und Werte an, aber in allen Fällen ist die tatsächliche Ausgabe ein NaN, trotz verschiedener Versuche, eine Zahl aus dieser Dienstprogrammfunktion zu erzwingen, kann ich es nicht bekommen.
Irgendwelche Ideen würden geschätzt.
Steve
Ein Plunker wäre wahrscheinlich hilfreich sein, zu untersuchen. –
Sie haben recht, aber das wird Zeit brauchen - vielleicht morgen – Steve
Ihr Quellobjekt würde helfen. Zur Verbesserung der Leistung sollten Sie die Ergebnisse auch in einer Variablen speichern und aus Ihrer Sicht zuordnen. – jornare