ショッピングカートを作成しようとしています。コンテキストを作成し、カートの増分ボタンと減分ボタンを押したときに状態を値として渡しました。アイテム数は変化しますが、カート内のナビゲーション バー コンポーネントで同じコンテキストを使用すると、アイテムの総数は変わりません。 。以下にコードスニペットを添付します
ここでコンテキストを作成します
リーリー以下は私の useContext プロバイダーです。
リーリー リーリーステータスの値は useReducer から取得され、すべてが正常に更新されています
これは、ナビゲーション バーで useContext フックを使用してショッピング カート内のアイテムの総数を取得する方法です。
リーリーしかし、ステータスが変化するたびに、ナビゲーション バーにカート内のアイテムの更新された総数が再表示されません。助けてください。
これは私の useReducer 関数とそれが更新するすべてのものです。 console.log() を実行して機能を確認しました。 state.totalItems を含め、返されるものはすべて問題ありません。
ああああP粉3489155722023-09-08 09:44:53
useReducer を使用すると、現在の状態が返されます。あなたに関する限り、国家はオブジェクトです。したがって、
totalItems をその状態オブジェクトから直接取得できます。例えば:###
リーリー
このように、
は状態オブジェクトから直接取得され、必要なときにどこでも使用できます。