一、什么是SPA(SPA 的概念)
單頁 Web 應用 (single-page application 簡稱為 SPA),簡單理解為:僅僅在web頁面初始化時加載相應的HTML、JavaScript、CSS,一旦頁面加載完成了,SPA不會因為用戶的操作而進行頁面的重新加載或跳轉,而是利用 JavaScript 動態的變換HTML的內(采用的是div切換顯示和隱藏),從而實現UI與用戶的交互。
二、SPA的優缺點
1、優點:
(1)由於避免了頁面的重新加載,SPA 可以提供較為流暢的用戶體驗。得益於ajax,我們可以實現無跳轉刷新,又多虧了瀏覽器的histroy機制,我們用hash的變化從而可以實現推動界面變化。
(2)只要使用支持HTML5和CSS3的瀏覽器就可以執行復雜的SPA,因此,開發人員不必為了寫SPA網站而特別學習另一個開發方式,而使用者也不額外安裝軟件,所以,讓開發SPA網頁程序的入門和使用門檻降低不少。
2、缺點:
以SPA方式開發的網站不容易管理也不夠安全。因為沒了一頁一頁的網頁給搜索引擎的爬蟲來爬,所以,在搜索引擎最佳化(SEO)的工作上,需要花費額外的功夫。因為沒有換頁,需要自定義狀態來取代傳統網頁程序以網址來做判斷。
