久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

javascript - vue2.0中router.repalce跟router.push有什么區別,二者的應用場景是會有怎樣的區別?

瀏覽:170日期:2023-05-31 14:57:31

問題描述

vue2.0中,在其對應的router2.0中解釋router.replace跟router.push二者很像,唯一的區別是router.replace不會向 history 添加新記錄,而是替換掉當前的 history 記錄。那么試問二者的應用場景有什么不同?

問題解答

回答1:

可以把路由router想象成一個訪問記錄的棧,router.replace()是替換掉棧頂,而router.push()則是向棧中再堆如一個新記錄。

一般情況下,要做前進后退的瀏覽記錄管理的,基本上都是用router.push(),但是也是有一些特殊情況需要用到router.replace()。比如,有一個授權頁,用戶在按流程操作時,某一步需要授權,是直接跳到授權頁,授權頁提交授權請求,直到成功授權后,跳到流程中的下一步操作的地址。此處,授權請求的那頁面應該用replace去替換掉自身的訪問記錄,防止用戶跳到下一步流程后按后退鍵回退到授權頁,而導致重復授權。

回答2:

沒有history的話,瀏覽器后退就無法找到上一個頁面的了。

標簽: JavaScript
主站蜘蛛池模板: 白水县| 合川市| 白朗县| 余江县| 桃园市| 灵台县| 深州市| 噶尔县| 江油市| 济阳县| 龙游县| 阿克苏市| 贡觉县| 南康市| 黔东| 栖霞市| 香格里拉县| 德钦县| 西安市| 浮山县| 巨野县| 富顺县| 大埔区| 原阳县| 莲花县| 通城县| 郸城县| 长沙市| 南靖县| 海伦市| 翼城县| 噶尔县| 沅江市| 海林市| 曲阳县| 永登县| 贵州省| 辽阳县| 琼结县| 依兰县| 澄城县|