-1
Komponente:Angular 2 kann nicht lesen Eigentum von Nicht definiert (Funktionsname)
import { Component, OnInit } from '@angular/core';
import { HttpClient } from '@angular/common/http';
@Component({
selector: 'app-ore-table',
templateUrl: './ore-table.component.html',
styleUrls: ['./ore-table.component.less']
})
export class OreTableComponent implements OnInit {
ores = '../assets/json/ores.json';
prices = 'https://esi.tech.ccp.is/latest/markets/prices/?datasource=tranquility';
oreArray: any;
pricesArray: any;
joinedArray: any;
constructor(private http: HttpClient) { }
getOres() {
this.http.get(this.ores).subscribe(data => {
this.oreArray = data;
this.getPrices();
});
}
getPrices() {
this.http.get(this.prices).subscribe(data => {
this.pricesArray = data;
this.joinPrices();
});
}
joinPrices() {
this.oreArray.forEach(function(data) {
const matchingPrice = this.getMatchingPrice(data);
});
}
getMatchingPrice(data) {
for (let i = 0; i < this.pricesArray.length; i++) {
if (this.pricesArray[i].type_id === data.id) {
return this.pricesArray[i];
}
}
return false;
}
ngOnInit() {
this.getOres();
}
}
nicht sicher, was hier vor sich geht. Ich Übertragung dieser Arbeits Code von Vanille JS zu Angular 2/Typoskript und diesen Fehler bei dem Versuch, die oben auszuführen:
Cannot read property 'getMatchingPrice' of undefined
Der Fehler in dieser Zeile auftritt:
const matchingPrice = this.getMatchingPrice(data);
Einsicht wird geschätzt. Vielen Dank.
Verwenden Sie den Pfeil-Syntax statt 'function'. Sie können mehr über dieses Thema in dem Link erfahren. – echonax