路由模式解析
這里要講vue-router的路由模式,首先要了解的一點就是路由是由多個URL組成的,使用不同的URL可以相應的導航到不同的位置。如果有進行過服務器開發或者對http協議有所了解就會知道,瀏覽器中對頁面的訪問是無狀態的,所以我們在切換不同的頁面時都會重新進行請求。而實際使用vue和vue-router開發就會明白,在切換頁面時是沒有重新進行請求的,使用起來就好像頁面是有狀態的,這是什么原因呢。這其實是借助了瀏覽器的History API來實現的,這樣可以使得頁面跳轉而不刷新,頁面的狀態就被維持在瀏覽器中了。
Vue-router的三種模式
-
Hash: 使用URL的hash值來作為路由。支持所有瀏覽器。
-
History: 以來HTML5 History API 和服務器配置。參考官網中HTML5 History模式
-
Abstract:支持所有javascript運行模式。如果發現沒有瀏覽器的API,路由會自動強制進入這個模式。
vue-router默認使用的是hash模式,這就會出現如下URL:
解決方法
只需要將router文件下的index.js(創建方式不同,也可能是router.js)中的如下代碼位置修改為history模式即可。