onClick時にリンク先を指定したいのですが、リンク先は条件によって変わる為stateで管理しています。
onClick時にstateを更新してもstateの値はレンダリング前なので更新されず、リンク先が一つ遅れてしまいます。
イベントの中で、stateの変更を検知したいのでuseEffectを使えば良いのかと考えたのですが、これはReactのポリシーに違反していたりしますでしょうか?
よろしくお願いいたします。
useEffect をイベントハンドラの中で呼ぶことはできません。
しかし、これが本当に質問したいことではないですよね? 本当に聞きたいことは、「onClick時にstateを更新してレンダリングに反映するにはどうすれば良いのか」ではないですか? もしそれを質問したいのであれば、具体的にやりたいこととソースコードを質問文に示してください。