React でカスタム アラートを使用してタブを切り替えるにはどうすればよいですか?
P粉744831602
P粉744831602 2024-02-03 18:42:35
0
2
391

私は react-router アラートを作成しているので、ここではあるタブから別のタブに切り替えるときにアラート メッセージを適用したいと考えています。関数 confirmSwitchTab を作成したため、alert 属性を適用しましたが、機能しません。各ルートでタブから別のタブに切り替えたいときにメッセージが表示されるようにプロンプ​​トを作成するにはどうすればよいですか。

ああああ

P粉744831602
P粉744831602

全員に返信(2)
P粉564301782

コードがデフォルトのリンク アクションの発生を妨げていないため、機能しません。リンクがクリックされると、接続された onClick ハンドラーが他のロジックを実行している間に、ナビゲーション アクションが直ちに有効になります。

クリック ハンドラーは、クリック イベント オブジェクトを使用し、そのオブジェクトに対して preventDefault を呼び出して、ナビゲーション操作の発生を停止する必要もあります。

リーリー
いいねを押す +0
P粉914731066

onLeave の仕組みについて誤解があると思います :-)

true を返しても「離脱操作は確認されません」。いずれにしても休業要請は確定となります。 onLeave 属性は単純に関数を受け取り、ページを離れるときにそれをトリガーします。この関数は、ここのようにヒントとして使用できますが、戻り値は使用されません。

達成したいことは、ページが実際に離れる前に完了する必要があります。アプリケーションのどこかに、ボタンをクリックして実際にページを変更できるナビゲーション メニューが必要です (通常は

を使用します) リーリー

)

ここで関数を使用します。

同様のものがあると仮定します

リーリー

このコールバックでconfirmSwitchTab関数を呼び出したいとします。

これを

のように変更できます。 リーリー

これがお役に立てば幸いです。私の質問が間違っている場合はお知らせください。

###乾杯###

質問を編集した後

###これを試して:### リーリー

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート