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

您的位置:首頁技術(shù)文章
文章詳情頁

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

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

問題描述

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

問題解答

回答1:

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

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

回答2:

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

標(biāo)簽: JavaScript
主站蜘蛛池模板: 哈尔滨市| 八宿县| 疏附县| 米林县| 长岭县| 三门县| 南涧| 香港 | 涟水县| 北宁市| 兴和县| 喀喇| 华蓥市| 靖江市| 云阳县| 乐安县| 洛川县| 呼玛县| 墨竹工卡县| 双峰县| 怀来县| 上饶县| 临沧市| 武安市| 永嘉县| 昌乐县| 新密市| 云南省| 丰镇市| 康保县| 古浪县| 海晏县| 延长县| 高陵县| 普宁市| 栾川县| 偏关县| 昌图县| 蕉岭县| 乐安县| 普安县|