私は最初のReactアプリケーションを作成するのにReact Starter Kitを使用しています。私はAjax呼び出しに苦労しています。私は、このキットは、(アプリルーティングのために内部的に使用方法である)Ajaxの呼び出しを実行する方法埋め込んでいることを見た:私は私のコンポーネントでこれを追加しましたReact Starter KitのAjaxコール
import fetch from '../../core/fetch';
をした後、ときAjax呼び出しを実行しようコンポーネントがロードされます。ここに私のコードは次のとおりです。
componentDidMount() {
var moduleManager = 'https://my_domain.com/my_endpoint';
async function getModules (url) {
const response = await fetch(url);
const content = await response.json();
return content;
};
this.state.modulesList = getModules(moduleManager);
console.log(this.state.modulesList);
}
私はまた私のレンダリング機能で状態値を使用しています:一緒に入れ
render() {
var rows = [];
for (var i = 0; i < this.state.modulesList.length; i++) {
rows.push(
<li>{this.state.modulesList[i]}<li/>
);
}
このコードは私のコンソールでこれをログに記録します。そして、
Promise {[[PromiseStatus]]: "pending", [[PromiseValue]]: undefined}
Ajaxコールが実行され(正常に)、私のコンソールにはこれが表示されます:
Promise
__proto__:Promise
[[PromiseStatus]]:"resolved"
[[PromiseValue]]:Array[16]
もちろん、私のビューを更新する必要があります:ajax呼び出しを実行すると、配列メンバーごとに1行表示します。
私には何が欠けていますか?あなたのコードをテストすることなく
おかげ
ありがとう、setStateはそれをしました! – frinux