Open LeoWangJ opened 5 years ago
由於AJAX的出現,使得我們在同一個頁面上不用刷新就能夠處理資料(CRUD),來進行畫面的互動效果,進而達到單頁面的效果。
但是透過AJAX只能達到單頁面的操作,切換到別的路徑時畫面還是會重整一次才顯示,這樣會照成使用者的體驗不好,那現今各大框架的路由是怎麼解決這個問題的呢?
透過兩種方式來解決:
路徑hash的判斷。由於路徑後面加上#之後,不會再隨著路徑不同而去向後端發出請求,也不會重新加載頁面,透過onhashchange方法可以監聽hash值有沒有發生改變。
由於HTML5 histroy API 多了pushState,replaceState這兩個方法,可以改變當前的url,但是不會向後端發出請求。
由於AJAX的出現,使得我們在同一個頁面上不用刷新就能夠處理資料(CRUD),來進行畫面的互動效果,進而達到單頁面的效果。
但是透過AJAX只能達到單頁面的操作,切換到別的路徑時畫面還是會重整一次才顯示,這樣會照成使用者的體驗不好,那現今各大框架的路由是怎麼解決這個問題的呢?
透過兩種方式來解決:
路徑hash的判斷。由於路徑後面加上#之後,不會再隨著路徑不同而去向後端發出請求,也不會重新加載頁面,透過onhashchange方法可以監聽hash值有沒有發生改變。
由於HTML5 histroy API 多了pushState,replaceState這兩個方法,可以改變當前的url,但是不會向後端發出請求。