1. 程式人生 > >angularjs和vuejs的路由用#識別路徑

angularjs和vuejs的路由用#識別路徑

Web App 中需要通過URL 標識不同狀態,不同狀態對應不同URL 既方便前進後退,也方便儲存書籤。
不過Web App 中為保證使用者體驗,頁面狀態的轉換一般是不重新整理頁面的,這往往通過ajax實現。
傳統的ajax不會影響位址列(請求通過XHR物件完成,而不是請求新URL),那如果你想讓URL對應不同的頁面狀態怎麼辦?windows.location之類的方法是會重新整理整個頁面的。
這就需要用到傳統的#了。錨點這東西本來是讓你在當前頁面的不同部分移動的,支援前進後退和儲存書籤,於是就被拿來應用在Web App的路由中。這樣www.example.com/index.html#phones 和www.example.com/index.html#users 就能表示兩個狀態,而且轉換不會重新整理頁面。
新的History API可以把#

去掉,不過需要伺服器提供一份fallback版本,這裡就不細說了。