更新時(shí)間:2022-11-07 來(lái)源:黑馬程序員 瀏覽量:
前端路由就是把不同路由對(duì)應(yīng)不同的內(nèi)容或頁(yè)面的任務(wù)交給前端來(lái)做。前端路由和后端路由的原理是類似的,但是實(shí)現(xiàn)的方式不一樣。
對(duì)于單頁(yè)面應(yīng)用(Single Page Application,SPA)來(lái)說(shuō),主要通過(guò)URL中的hash(#號(hào))來(lái)實(shí)現(xiàn)不同頁(yè)面之間的切換。hash有一個(gè)特點(diǎn),就是HTTP請(qǐng)求中不會(huì)包含hash相關(guān)的內(nèi)容,所以單頁(yè)面程序中的頁(yè)面跳轉(zhuǎn)主要用hash來(lái)實(shí)現(xiàn)。
圖5-2演示了前端路由的工作原理。
圖5-2 前端路由
在圖5-2中,index.html后面的“#/home”是hash方式的路由,由前端路由來(lái)處理,將hash值與頁(yè)面中的組件對(duì)應(yīng),當(dāng)hash值為“#/home”時(shí),就顯示“首頁(yè)”組件。
前端路由在訪問(wèn)一個(gè)新頁(yè)面的時(shí)候僅僅是變換了一下hash值而已,沒(méi)有和服務(wù)端交互,所以不存在網(wǎng)絡(luò)延遲,提升了用戶體驗(yàn)。