React Nativeアプリケーションで作業しています。このアプリでは、ユーザーがサインインすると、redux-sagaを使用してデータを取得するためのAPI呼び出しがサーバーに行われます。 reduxストアでは、私はブール変数 "fetchingData"を維持しています。 API呼び出しが開始されると 'true'に設定され、データがフェッチされるか、何らかのエラーが発生すると 'false'に設定されます。今、私はデータがフェッチされているときにスピナーを表示したい、そしてデータがフェッチされるときにFlatListを表示したい。私はreturn文をif-else条件にラップすることでこれを行うことができることを知っています。私はこれを行うためのより良い方法が必要であると思います。 誰かがこれを手伝ってくれたら、React Nativeでこの条件付きレンダリングを実現する良い方法を教えてください。前もって感謝します。React Nativeで条件付きレンダリングを使用する最良の方法
1
A
答えて
1
私はそうは思わない。 render()
メソッドが呼び出されると、適切なコンポーネントが状態に基づいて返される必要があります。
render() {
const isLoading = this.state.isLoading
return isLoading ?
<Spinner /> //return a spinner
:
<FlatList /> return a list with data
}
1
これは、あなたがどこにでも使用パターンである場合は、抽象パターンうちに、いくつかの方法があります。
ジェネリック<Loading />
コンポーネントの作成
:
class Loading extends React.Component { static defaultProps = { waitingElement: <Spinner />, renderedElement: null }; render() { return this.props.loading ? this.props.waitingElement : this.props.renderedElement; } } // In some other component's `render`: <Loading renderedElement={<component with=props />}, loading={this.state.isWaiting} />
higher-を使用するには、コンポーネントをラップする順序コンポーネント:
function withLoading(Component, spinner = <Spinner />) { return class extends Component { render() { if (this.props.loading) return spinner; return super.render(); } }; } // Some other file completely export default withLoading(class MyComponent { render() { return "Happy path only!"; } });
関連する問題
- 1. RAIIを条件付きで使用する最良の方法
- 2. react-native:条件付きレンダリングが動作しない
- 3. React js内の条件付きレンダリング
- 4. Meteor + Reactの条件付きレンダリング
- 5. 条件付きレンダリングReduxとReact
- 6. React、Mobx、Firebase条件付きレンダリング
- 7. 条件付きチェーンスコープを設定する最良の方法
- 8. React.jsレンダリング条件付きで
- 9. 2つのコンポーネントを条件付きでレンダリングする方法は?
- 10. reactjsで条件付きレンダリングを使用するには?
- 11. Vue.jsで要素を条件付きでレンダリングする方法は?
- 12. PHPテンプレートシステムで条件付きを実装する最良の方法は?
- 13. コードビハインドで条件付きのクエリを作成する最も良い方法は?
- 14. React-Native:子コンポーネントの条件付きスタイル設定
- 15. EmberJsで条件付きアクションをレンダリングする方法は?
- 16. JSで条件付きレンダリングを実装する方法は?
- 17. React-nativeでStripeを実装する最も良い方法は?
- 18. は条件付きIが条件付きで使用する
- 19. 条件変数の値を即座に条件付きで代入する最も良い方法
- 20. 反応の条件付きレンダリング
- 21. シェルの "条件付き"エイリアスを定義する最良の方法
- 22. 条件付きレンダリングの問題(ReactJS)
- 23. 条件付きロジックjsx react
- 24. 条件付きレンダリング:コンポーネント
- 25. 'when'をSystemdユニットの条件付きで使用する方法
- 26. ReactのHTML要素の条件付きレンダリング?
- 27. angularjsで$ .eachを条件付きで使用する方法
- 28. トグル時の再マウントを引き起こすReactでの条件付きレンダリング
- 29. 条件付きレンダリングを使用したリアクションルーティング
- 30. Gradle for Jenkinsの条件付き依存関係を使用する最良の方法