Zuerst verwendete ich componentWillMount()
, um die articles
Eigenschaft zu füllen (das funktionierte, kein Problem). Ich habe diese Werte wiederholt, um verschiedene Bilder/Texte auf bestimmten Containern/Komponenten anzuzeigen.Mehrere Fetch-Anweisungen in ComponentWillMount
Das Problem, das ich jetzt habe, ist, dass ich jetzt auch componentWillMount
verwenden möchte, um die background
Eigenschaft mit einem einzigen Bild zu füllen. Ich denke, ich war in Ordnung mit der ''
anstelle von []
, aber ich bin mir nicht sicher, wie diese beiden API-Aufrufe zu machen.
Ich habe genug Forschung durchgeführt, um zu wissen, dass meine Antwort wahrscheinlich in Versprechungen liegt, aber ich konnte nicht aus den Beispielen extrapolieren, wie sie auf mein spezielles Problem angewendet werden würden. Irgendwelche Ideen?
constructor(props) {
super(props);
this.state = {
articles: [],
backgroundz: '',
};
}
componentWillMount() {
fetch('http://localhost:8000/api/getArticles')
.then(function (response) {
return response.json();
})
.then(function (json) {
this.setState({
articles: json,
});
}.bind(this));
fetch('http://localhost:8000/api/getBackground')
.then(function (response) {
return response.json();
})
.then(function (json) {
this.setState({
backgroundz: json,
});
}.bind(this));
}
Anstelle von '.bind (this)' sollten Sie wirklich Pfeilfunktionen verwenden. – Bergi
Sie müssen wahrscheinlich die unveränderten Teile Ihres Zustands in jedem 'setState'-Aufruf klonen – Bergi