2017-03-18 12 views
0

私はここを見回し、いくつかの役立つ回答を見ましたが、何も私の問題を助けませんでした。私の関連するコード:React-Complete Domのレンダリング前にAJAXリクエストを完了しました...コールバック付き

enter image description here 基本的に私の考えはせずにこの問題を解決するためにどのように任意のアイデア...私はこれらの小道具と子コンポーネントはGameBoard呼び出す前に、私は状態を更新終えることができるようにするonSuccessは、コールバック関数であることです非同期属性を混乱させる?

+0

実際のコードを投稿してください。 – haxxxton

+0

[Redux](https://github.com/reactjs/redux)を[ReduxPromise](https://github.com/acdlite/)で見ましたか? redux-promise)はどこですか? – haxxxton

答えて

0

render()の中には、フラグに基づいて条件付きでレンダリングする中間的な読み込みメッセージ(またはスピンコンポーネント)を返す必要があります。完了したら、あなたのajaxリクエストでそのフラグを切り替えるようにしてください。

非常に基本的な例...

render() { 
    if (!this.state.didFetch) return <div>loading...</div>; 
    return <GameBoard />; 
} 

あなたのAjaxリクエストの更新状態たら、render()メソッドが自動的に小道具ではGameBoardをレンダリング、再び呼び出されます。詳細については、コンポーネントのライフサイクルのドキュメントをチェックアウトする - 具体的には、セクションの更新について... "An update can be caused by changes to props or state"

をサイドノートとしては、一般の仮想DOMの概念を反応させることによりリアクトでのjQueryを使用するために悪い習慣と考えられています。 jQueryを他の場所で使用していない場合は、replacing it completely with axiosと考えてください。

関連する問題