私が次の状態にあるとします:
リーリー そして、次のように useImperativeHandle
に入れます:
useEffect を使用して状態が次のように変化するかどうかを追跡すると:
リーリー
onClick があるように手動でチェックした場合にのみ、それが印刷されます。それ以外の場合はステートフルではありません。なぜこうなった?他に機能させる方法はありますか?それとも状態を親に転送する唯一の方法ですか?
P粉6749994202024-04-01 18:22:37
useEffect
はリアクティブではありません。物事を追跡しません。レンダー間の依存関係を比較するだけで、相違がある場合は、指定されたコールバックを実行します。 useEffect
を持つコンポーネントは、関数を実行するために 再レンダリングする必要があります。
できることは、親から子にコールバックを渡し、子が状態を変更したときにコールバックを呼び出せるようにすることです。