hash模式的工作原理是onhashchange事件,通過window.location.hash訪問
window.
onhashchange
=function()
由於hash發生變化的url都會被瀏覽器記錄,雖然瀏覽器沒有請求伺服器,但頁面狀態和url關聯起來了。這就是前端路由(更新檢視但不會重新請求頁面),成為了單頁面應用標配。
#符號本身以及他後面的字元稱之為hash
hash值為#/index
history介面是瀏覽器歷史記錄棧提供的介面。html5開始,history inte***ce提供了兩個新的方法,pushstate(),replacestate()可以對瀏覽器歷史記錄棧進行修改。雖然修改了url,但瀏覽器並不會立即向後台傳送請求。
特別注意:history模式需要後台配置支援,若後台配置不正確,訪問就會出現404。
history模式不再有#,
前端url必須和實際向後端發起請求的url一致
vue-router的作用就是通過改變url,在不重新請求頁面的情況下,更新頁面檢視
vue router的兩種模式的區別
優點 良好的互動體驗,使用者不需要重新整理頁面,頁面顯示流暢,良好的前後端工作分離模式,減輕伺服器壓力,缺點 不利於seo,初次載入耗時比較多 對於hash模式會建立hashhistory物件,在訪問不同的路由的時候,會發生兩件事 hashhistory.push 將新的路由新增到瀏覽器訪問的歷史的...
vue router的兩種模式的區別
大家都知道vue是一種單頁應用,單頁應用就是僅在頁面初始化的時候載入響應的html css js 優點 良好的互動體驗,使用者不需要重新整理頁面,頁面顯示流暢,良好的前後端工作分離模式,減輕伺服器壓力 缺點 不利於seo,初次載入耗時比較多 通過history api,我們丟掉了醜陋的 但是他有個毛...
vue router的兩種模式的區別
眾所周知,vue router有兩種模式,hash模式和history模式,這裡來談談兩者的區別。hash模式背後的原理是onhashchange事件,可以在window物件上監聽這個事件 上面的 可以通過改變hash來改變頁面字型顏色,雖然沒什麼用,但是一定程度上說明了原理。更關鍵的一點是,因為h...