vue2.0 では、対応する router2.0 は、router.replace が router.push に非常に似ていると説明しています。唯一の違いは、router.replace は履歴に新しいレコードを追加せず、現在のレコードを置き換えることです。 。 それでは、2 つのアプリケーション シナリオの違いは何でしょうか?
ringa_lee
ルーターをアクセス レコードのスタックとして考えることができ、router.replace()是替换掉栈顶,而router.push()そのスタックに新しいレコードを積み上げることができます。
router.replace()
router.push()
通常の状況では、前方閲覧記録と後方閲覧記録を管理したい場合は、基本的に router.push(),但是也是有一些特殊情况需要用到router.replace()。比如,有一个授权页,用户在按流程操作时,某一步需要授权,是直接跳到授权页,授权页提交授权请求,直到成功授权后,跳到流程中的下一步操作的地址。此处,授权请求的那页面应该用replace を使用して自分のアクセス記録を置き換え、ユーザーが次のステップに進んでから戻るボタンを押して認証ページに戻るのを防ぎます。再承認。
replace
履歴がない場合、ブラウザは戻ったときに前のページを見つけることができません。
ルーターをアクセス レコードのスタックとして考えることができ、
router.replace()
是替换掉栈顶,而router.push()
そのスタックに新しいレコードを積み上げることができます。通常の状況では、前方閲覧記録と後方閲覧記録を管理したい場合は、基本的に
router.push()
,但是也是有一些特殊情况需要用到router.replace()
。比如,有一个授权页,用户在按流程操作时,某一步需要授权,是直接跳到授权页,授权页提交授权请求,直到成功授权后,跳到流程中的下一步操作的地址。此处,授权请求的那页面应该用replace
を使用して自分のアクセス記録を置き換え、ユーザーが次のステップに進んでから戻るボタンを押して認証ページに戻るのを防ぎます。再承認。履歴がない場合、ブラウザは戻ったときに前のページを見つけることができません。