ich ein Problem habe, nachdem ich meine this.state ist undefine mit holen, und ich verstehe nicht, warum ....This.state undefine nach fetch()
googlePOI(center) {
this.setState({markerPOI: []});
var i = 0;
let call = '';
call = call.concat(URL_POI, center.lat.toString(), ',', center.lng.toString(), ARG_POI, this.state.filters[i], KEY);
console.log(this.state) // DEFINE !
fetch(call)
.then((answer) => answer.json())
.then(function(answer) {
console.log(this.state) // UNDEFINE !
answer.results.map((item, index) => {
let geo = item.geometry.location;
let marker = <MapView.Marker title={item.name} coordinate={{latitude: geo.lat, longitude: geo.lng}} />
})
}).catch(function(error) {
console.log("ERROR: fetch googlePOI -> "+error);
})
}
Zum einen aktualisieren Sie nie Ihren Zustand aus dem Fetch mit 'this.setState ({someState: someValue})'. Zweitens, wenn "this.state" völlig undefiniert ist, sollten Sie den Code für den Rest Ihrer Komponente bereitstellen, sicherlich Ihren Konstruktor. – MattyK14