ホームページ  >  に質問  >  本文

useState セッター関数を React のグローバル スコープに公開する

次のようなことができるかどうか興味があります:

リーリー

何らかの理由で、setPanelActive 関数を外部から呼び出すと、useEffect がトリガーされません。

何らかのラッパーまたはコンテキストを作成する必要がありますか?それを機能させるプロバイダー?

P粉299174094P粉299174094429日前850

全員に返信(2)返信します

  • P粉587970021

    P粉5879700212023-09-12 09:11:45

    実行中の割り当てで globalThis.setPanelActivesetPanelActive と同じように機能することを期待している場合、それは間違いです。フックはここのコンポーネント スコープで機能するように設計されています。この場合、次のように、上位レベルで context を使用する必要があります。 リーリー リーリー

    これで、任意のコンポーネントから

    setPanelActive を使用すると、useEffect が起動するはずです

    返事
    0
  • P粉333186285

    P粉3331862852023-09-12 00:33:05

    ###ご参加ありがとうございます。

    @hatana が言及した内容について調査した結果、解決策を見つけました - @hatana 。 com/DawChihLiou/eventbus-demo" rel="nofollow noreferrer">イベント バス 。まさに私が望んでいることを実行します。

    返事
    0
  • キャンセル返事