問題タブ [redux-actions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
91 参照

reactjs - redux thunk から同期データを取得しない

アクションクリエーター

レデューサー

マップコンポーネント

app.jsルート ファイル

ここで私の問題は、マップ コンポーネントから isPickEmpty() を呼び出すときアクションクリエータthis.props.pickup(false)を 呼び出すときです (チェックインしてfalse のredux-devtoolsを表示することもできます) 。代わりにデフォルト値を表示して いますが、値を表示している内部の値を慰めているときに 間違って いる場合は修正してください行き詰まりました、だれか助けてください!更新 私はprblmが実際にどこにあるのかを知りましたcomponentWillReceiveProps(nextprops)false
setTimeout(() =>{console.log('sdkjlfjlksd',this.state.pick) }, 3000);false



componentWillReceivePropsは、非同期であるためピック状態の値を設定しているため、isPickEmpty関数で値をフェッチすると、前の値を取得しています。
どのようにsetStateを処理するか、または解決する方法はありますか

0 投票する
1 に答える
172 参照

javascript - オブジェクトの配列を不変に更新し、長さを管理する redux

レデューサーで作成しているreact / reduxアプリ(redux-actionsを使用)に検索履歴を保存しようとしています。最新の 10 件の検索を保存し、最新のものを最初に表示したいと考えています。オブジェクトの配列があり、(不変に) 新しいオブジェクトを配列の先頭に追加し、残りのすべての結果を 1 つ下にシフトしたいと考えています。また、配列が 10 要素を超えないようにします。私は現在、これで毎回最初の要素をオーバーライドしています:

ES6でこれを行うためのクリーンな方法があることを望んでいました。テイカーはいますか?

0 投票する
2 に答える
8059 参照

redux - redux アクション タイプの説明に名前を付けるためのベスト プラクティス

現在、as という名前のアクション タイプを使用 MY_ACTION_TYPE_1 = 'MY_ACTION_TYPE_1'すると、非常に長くなると、redux chrome 拡張機能でビューから切り離されてしまい、まったく判読できなくなります。値に名前を付けるベストプラクティスは何ですか? 自然言語 (つまりMY_ACTION_TYPE_1 = 'My action type 1') または常に上記の変数名と同じにする必要がありますか?

アクション タイプ変数名自体とは異なるアクション タイプ名の値を設定した場合、トレードオフや問題はありますか?

つまり、以下では、自然言語でうまく折り返されているのを確認してください。

ここに画像の説明を入力

0 投票する
1 に答える
2172 参照

redux - Redux:正規化された状態ツリーでブール値を切り替える最良の方法は何ですか?

現在、React Native でアプリを開発しています。アプリの状態は非常に複雑ですが、Redux と Normalizr により管理可能です。ユーザーがアイテムをフィルタリングするための機能を実装する必要があります。

ユーザーがアイテムをフィルタリングできるように、Normalizr スキーマでサーバーの応答を強化しました。

対応するレデューサーは次のようになります。

これらのサブカテゴリは、この SwitchListItem コンポーネントを使用して UI に表示されるようになり、セレクターを介してアイテムを取得します。

私は今、<Switch />コンポーネントのonValueChange()機能を実装しようとしていますが、ここで私の質問が発生しました:

正規化された状態ツリーでブール値を切り替える最良の方法は何ですか?

以下で説明する2つの解決策を思いつきました。この中で良いと思うものがあれば教えてください。そうでない場合は、もっとうまくできることについてアドバイスをもらいたいです:)

解決策 1: レデューサーの拡張:

この問題に対する私の最初の解決策は、reducer を拡張してTOGGLE_ITEMアクションをリッスンすることでした。これは次のようになります。

多くのコードを必要としないため、これは私の好みのソリューションです。

解決策 2: に項目を渡すセレクターを充実させるSwitchList:

もう1つの解決策は、状態のキーを持つセレクターを使用して、リストに渡されるときにオブジェクトを充実させることです。次に、このキーを使用して状態を次のように更新するアクションを作成できます。

Reduxの経験が豊富な場合は、できれば意見のある回答を読みたいです。また、ノーマライズでデータを強化する私の方法が悪いと思われ、より良い方法を思い付くことができる場合は、お知らせください! アドバイスをありがとうございました!