欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

vue-router的兩種模式有哪些區(qū)別

這篇“vue-router的兩種模式有哪些區(qū)別”文章的知識點大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“vue-router的兩種模式有哪些區(qū)別”文章吧。

創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的大足網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

區(qū)別:1、history的url沒有“#”號,而hash有;3、history修改的url可以是同域的任意url,而hash是同文檔的url;3、相同的url,history會觸發(fā)添加到瀏覽器歷史記錄棧中,而hash不會觸發(fā)。

本教程操作環(huán)境:windows7系統(tǒng)、vue2.9.6版,DELL G3電腦。

vue-router兩種模式

1.hash模式

vue-router默認的是hash’[h??] '模式,使用URL的hash來模擬一個完整的URL,于是當URL改變的時候,頁面不會重新加載,也就是單頁面應用了。當#后面的hash發(fā)生變化,不會導致瀏覽器向服務(wù)器發(fā)出請求,瀏覽器不會發(fā)出請求就不會刷新頁面,并且會觸發(fā)hasChange這個事件,通過監(jiān)聽hash值的變化來實現(xiàn)更新頁面部分內(nèi)容的操作。

對于hash模式會創(chuàng)建hashHistory對象,在訪問不同的路由的時候,會發(fā)生兩件事:

HashHistory.push()將新的路由添加到瀏覽器訪問的歷史的棧頂,和HasHistory.replace()替換到當前棧頂?shù)穆酚伞?/p>

vue-router的兩種模式有哪些區(qū)別

2.history模式

因為HTML5標準的發(fā)布,多了兩個API,pushState() 和 replaceState()。通過這兩個API

(1)可以改變url地址且不會發(fā)送請求。

(2)不僅可以讀取歷史記錄棧,還可以對瀏覽器歷史記錄棧進行修改。

除此之外,還有popState(),當瀏覽器跳轉(zhuǎn)到新的狀態(tài)時,將觸發(fā)popState事件。

添加/修改歷史狀態(tài)

包括了pushState,replaceState兩個方法,這兩個方法接收三個參數(shù):stateObj,title,url

// 逐條添加歷史記錄條目
window.history.pushState(stateObject, title, URL)
// 修改歷史記錄
window.history.replaceState(stateObject, title, URL)

切換歷史記錄

包括 back 、forwardgo三個方法,對應瀏覽的前進(forward)、后退(back)、跳轉(zhuǎn)(go)操作。

區(qū)別:

  • history和hash都是利用瀏覽器的兩種特性實現(xiàn)前端路由,history是利用瀏覽歷史記錄棧的API實現(xiàn),hash是監(jiān)聽location對象hash值變化事件來實現(xiàn)

  • history的url沒有’#'號,hash反之

  • history修改的url可以是同域的任意url,hash是同文檔的url

  • 相同的url,history會觸發(fā)添加到瀏覽器歷史記錄棧中,hash不會觸發(fā)。

history和hash的優(yōu)點和缺點

  • history比hash的url美觀(沒有’#'號)

  • history修改的url可以是同域的任意url,hash則只能是同文檔的url

  • history模式往往需要后端支持,如果后端nginx沒有覆蓋路由地址,就會返回404,hash因為是同文檔的url,即使后端沒有覆蓋路由地址,也不會返回404

  • hash模式下,如果把url作為參數(shù)傳后端,那么后端會直接從’#‘號截斷,只處理’#'號前的url,因此會存在#后的參數(shù)內(nèi)容丟失的問題,不過這個問題hash模式下也有解決的方法。

history模式怕啥

不怕前進,不怕后退,就怕刷新,(如果后端沒有準備的話),因為刷新是實實在在地去請求服務(wù)器的。

在history模式下,你可以自由的修改path。history模式最終的路由都體現(xiàn)在url的pathname中,這部分是會傳到服務(wù)器端的,因此需要服務(wù)端對每一個可能的path值都作相應的映射。

當刷新時,如果服務(wù)器中沒有相應的響應或者資源,會分分鐘刷出一個404來。

以上就是關(guān)于“vue-router的兩種模式有哪些區(qū)別”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

分享名稱:vue-router的兩種模式有哪些區(qū)別
URL鏈接:http://chinadenli.net/article20/gjojjo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站外貿(mào)建站、小程序開發(fā)、網(wǎng)站營銷、標簽優(yōu)化自適應網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化