この Google ガイドを読んで、Google が提供するこのサンプル コードを使用していますが、問題があります。戻る/進むボタンを使用すると、確認ダイアログが戻る前に URL が変更されます。これは、ユーザーが別の場所に移動しないことにした場合、URL は現在の場所を表すものではなくなることを意味します。
誰かが解決策または回避策を持っていますか? 理想的には、確認が行われるまで URL は変更されませんが、拒否後に急いで URL を元に戻すだけでもよいでしょう。
この Google ガイドを読んで、Google が提供するこのサンプル コードを使用していますが、問題があります。戻る/進むボタンを使用すると、確認ダイアログが戻る前に URL が変更されます。これは、ユーザーが別の場所に移動しないことにした場合、URL は現在の場所を表すものではなくなることを意味します。
誰かが解決策または回避策を持っていますか? 理想的には、確認が行われるまで URL は変更されませんが、拒否後に急いで URL を元に戻すだけでもよいでしょう。
回避策はありません。URL が変更されたことをアプリが何らかの形で検出し、場所の変更がトリガーされます (したがって、ナビゲーションが確認される前)。
また、URL が変更された理由を知る方法はありません。「裏」でしたか。「前」?履歴メニューを使用して一度に数ステップ戻る「戻る」?ブックマーク?URLの手動編集?したがって、すべての場合に URL の変更を「キャンセル」するために History.next() を実行する方法はありません (別の場所の変更をトリガーすることにも注意してください)。また、URL を History.back/next/go 以外で変更しようとすると、転送履歴が消去されますが、これもおそらく望ましくありません。
参考までに、私は 2 年前に自分の「プレース マネージャー」にその動作を実装し、GWT 2.1 に PlaceHistoryHandler を追加したときに Ray Ryan と話しました。場所と同期します。参考までに、私が 2 年前に調べたときと今年の初めに、GMail は同じ動作をしていました (下書きメッセージを作成し、下書きに変更が保存されていない間にナビゲートします)。