前端的單頁面模式SPA和多頁面模式MPA

2022-02-14 19:07:31 字數 3385 閱讀 6495

前端部分的搭建,需要考慮使用哪種模式進行頁面之間的跳轉互動,

而專案內的頁面互動,不可避免的需要相互之間的資料共享。

這就引出了本篇部落格的目的,一起來談談:專案前端部分的構建方式以及資料共享方式。

1)方便性

結合開發的時間需求和方便性選擇適合的前端模式;

2)效能

在專案的體量比較大,或者某個頁面需要載入較多檔案時,會對載入頁面所需時間產生影響

3)瀏覽器的快取

在專案發布後如果檔案(css/js/image)有更新,需要使用者瀏覽器清理快取才會從伺服器獲取更新後的檔案,

可以通過檔案末尾新增時間戳和版本號來避免瀏覽器優先使用內部快取檔案這樣的問題。

4)檔案的目錄結構

是按照檔案的類別設定目錄結構?還是按照不同頁面設定?

頁面跳**使用window.location.href = "./index.html"進行頁面間的跳轉;

資料傳遞:可以使用path?account="123"&password=""路徑攜帶資料傳遞的方式,或者localstorage、cookie等儲存方式

只有一張web頁面的應用,是一種從web伺服器載入的富客戶端,單頁面跳轉僅重新整理區域性資源 ,公共資源(js、css等)僅需載入一次

兩種模式對比:

頁面模式

頁面的組成

多個完整頁面,

例如page1.html、page2.html等

由乙個初始頁面和多個頁面模組組成,

例如:index.html和page1.htnl.js、page2.html.js等

公共檔案載入

頁面跳轉/內容更新

頁面通過window.location.href = "./index.html"跳轉

頁面跳轉/內容更新

所需資料的傳遞

可以使用路徑攜帶資料傳遞的方式,例如:"123"&password=123456"",或者localstorage、cookie等儲存方式

直接通過引數傳遞,或者全域性變數的方式進行,因為都是在乙個頁面的指令碼環境下

使用者體驗

如果單個頁面載入的檔案相對較大(多),頁面切換載入會很慢

頁面片段間切換較快,使用者體驗好,因為初次已經載入好相關檔案。但是初次載入頁面時需要調整優化,因為載入檔案較多

適用場景

適用於高度追求高度支援搜尋引擎的應用

高要求的體驗度,追求介面流暢的應用

轉場動畫

不容易實現

容易實現

總結:單頁面模式:相對比較有優勢,無論在使用者體驗還是頁面切換的資料傳遞、頁面切換動畫,都可以有比較大的操作空間

多頁面模式:比較適用於頁面跳轉較少,資料傳遞較少的專案中開發,否則使用cookie,localstorage進行資料傳遞,是一件很可怕而又不穩定的無奈選擇

前端的明天在框架,得學vue了

前端部分的搭建,需要考慮使用哪種模式進行頁面之間的跳轉互動,

而專案內的頁面互動,不可避免的需要相互之間的資料共享。

這就引出了本篇部落格的目的,一起來談談:專案前端部分的構建方式以及資料共享方式。

1)方便性

結合開發的時間需求和方便性選擇適合的前端模式;

2)效能

在專案的體量比較大,或者某個頁面需要載入較多檔案時,會對載入頁面所需時間產生影響

3)瀏覽器的快取

在專案發布後如果檔案(css/js/image)有更新,需要使用者瀏覽器清理快取才會從伺服器獲取更新後的檔案,

可以通過檔案末尾新增時間戳和版本號來避免瀏覽器優先使用內部快取檔案這樣的問題。

4)檔案的目錄結構

是按照檔案的類別設定目錄結構?還是按照不同頁面設定?

頁面跳**使用window.location.href = "./index.html"進行頁面間的跳轉;

資料傳遞:可以使用path?account="123"&password=""路徑攜帶資料傳遞的方式,或者localstorage、cookie等儲存方式

只有一張web頁面的應用,是一種從web伺服器載入的富客戶端,單頁面跳轉僅重新整理區域性資源 ,公共資源(js、css等)僅需載入一次

兩種模式對比:

頁面模式

頁面的組成

多個完整頁面,

例如page1.html、page2.html等

由乙個初始頁面和多個頁面模組組成,

例如:index.html和page1.htnl.js、page2.html.js等

公共檔案載入

頁面跳轉/內容更新

頁面通過window.location.href = "./index.html"跳轉

頁面跳轉/內容更新

所需資料的傳遞

可以使用路徑攜帶資料傳遞的方式,例如:"123"&password=123456"",或者localstorage、cookie等儲存方式

直接通過引數傳遞,或者全域性變數的方式進行,因為都是在乙個頁面的指令碼環境下

使用者體驗

如果單個頁面載入的檔案相對較大(多),頁面切換載入會很慢

頁面片段間切換較快,使用者體驗好,因為初次已經載入好相關檔案。但是初次載入頁面時需要調整優化,因為載入檔案較多

適用場景

適用於高度追求高度支援搜尋引擎的應用

高要求的體驗度,追求介面流暢的應用

轉場動畫

不容易實現

容易實現

總結:單頁面模式:相對比較有優勢,無論在使用者體驗還是頁面切換的資料傳遞、頁面切換動畫,都可以有比較大的操作空間

多頁面模式:比較適用於頁面跳轉較少,資料傳遞較少的專案中開發,否則使用cookie,localstorage進行資料傳遞,是一件很可怕而又不穩定的無奈選擇

前端的明天在框架,得學vue了

Web 單頁面和多頁面模式

前端部分的搭建,需要考慮使用哪種模式進行頁面之間的跳轉互動,而專案內的頁面互動,不可避免的需要相互之間的資料共享。這就引出了本篇部落格的目的,一起來談談 專案前端部分的構建方式以及資料共享方式。1 方便性 結合開發的時間需求和方便性選擇適合的前端模式 2 效能 在專案的體量比較大,或者某個頁面需要載...

前端 單頁面和多頁面應用區分

該文章寫的很清晰,讓人很快的分別出其中差異 只有一張web頁面的應用,是一種從web伺服器載入的富客戶端,單頁面跳轉僅重新整理區域性資源 公共資源 js css等 僅需載入一次,常用於pc端官網 購物等 如圖 單頁面應用結構檢視 如圖 多頁面應用結構檢視 具體對比分析 組成乙個外殼頁面和多個頁面片段...

多頁面應用MPA與單頁面應用SPA的區別

通俗一點說就是指只有乙個主頁面的應用,瀏覽器一開始要載入所有必須的 html,js,css。所有的頁面內容都包含在這個所謂的主頁面中。但在寫的時候,還是會分開寫 頁面片段 然後在互動的時候由路由程式動態載入,單頁面的頁面跳轉,僅重新整理區域性資源。多應用於pc端。多頁面 mpa 就是指乙個應用中有多...