6-1.Angular 入門教學 - 使用路由打造一個SPA網站

Angular 入門教學


如果是新手可能不知道SPA是什麼,全名是Single-Page Application單頁式應用程式

簡單來說,我們傳統在開發WEB網站是多頁式的,也就是MPA(Multi-Page Application)

就是每一個網頁都是一個html檔案,換頁的時候就是改讀網址對應的那一個檔案

那這時候就會瀏覽器就會Reload新的一頁

反之,SPA在換頁時,你看起來像換頁,但其實還在同一頁

只是把原先頁面上的某個區塊,整個換成另外一個內容,如下圖

下圖為多頁應用和單頁應用的生命週期

那SPA跟MPA誰好誰壞呢?其實各有優缺點,要看你網站屬於什麼類型

項目

MPA

SPA

使用者體驗

SEO

no-script

以上是簡單的比較,由上面比較可以知道

  1. 使用者體驗

SPA的使用者體驗會優於MPA,但其實我前面的章節有提到,一個什麼都不處理的前後端分離網站,其實使用者體驗反而會輸傳統的網站,所以這邊SPA使用者體驗要優於MPA你也是必須要多做很多處理,如果你什麼都不做,其實體驗並不會比MPA好,甚至可能更差!

  1. SEO搜尋引擎優化

簡單來說就是各大搜尋網站的搜尋到你網站的排名,因為SPA的內容都是靠Javascript後續補上的,並非像MPA網站要求時就會回應該內容,因此就覺得可能各大搜尋網站的爬蟲,會沒辦法爬到SPA的網站內容,進而影響搜尋的排名,但也有搜尋網站指出即使SPA它們一樣可以正確的爬到內容,這或許是個未解的迷思。不過其實SEO並非單單就這一個因素決定,其實還有很多地方工作要做,不過後面可能會介紹到的Angular Universal會解決這個問題,就是當要求該網址時,會直接回應該頁內容。

  1. no-script

簡單來說,SPA網站沒有辦法在沒有javascript的環境下執行,但MPA可以。


所以這時候就可以做個歸納

當你的網站比較需要SEO,像是官方網站、活動網站,也同時適應各裝置的環境的能力要大,那就是用MPA來開發會比較穩。

如果是內部系統、功能性取向的系統,看重的是使用者體驗,那用SPA會是更好的選擇。

那接著下一篇,就要介紹路由的基本寫法

那這篇的範例檔是用來做下一篇要教的初始檔案,如果想跟著下一篇的範例做的可以先下載這個檔案

 

範例檔:下載

參考資料:  
SINGLE-PAGE APPLICATION VS MULTI-PAGE APPLICATION: PROS, CONS, AND WHICH IS BETTER? 




Copyright © 凱哥寫程式 2022 | Powered by TalllKai ❤