單頁應用SPA 多頁應用MPA

2021-09-25 08:00:07 字數 1375 閱讀 1020

spa單頁應用

第一次進入頁面的時候會請求乙個html檔案,重新整理清除一下。切換到其他元件,此時路徑也相應變化,但是並沒有新的html檔案請求,頁面內容也變化了。

原理是:js會感知到url的變化,通過這一點,可以用js動態的將當前頁面的內容清除掉,然後將下乙個頁面的內容掛載到當前頁面上,這個時候的路由不是後端來做了,而是前端來做,判斷頁面到底是顯示哪個元件,清除不需要的,顯示需要的元件。這種過程就是單頁應用,每次跳轉的時候不需要再請求html檔案了

mpa多頁應用

每一次頁面跳轉的時候,後台伺服器都會給返回乙個新的html文件,這種型別的**也就是多頁**,也叫做多頁應用

兩者區別

spampa

乙個外殼頁面和多個頁面片段構成

由多個完整的html頁面構成

頁面片段之間跳轉,部分載入

頁面之間的跳轉是從乙個完整頁面跳轉到另乙個完整頁面

跳轉後公共資源不重新載入

跳轉後公共資源重新載入

使用者體驗好,片段切換快、移動端也一樣

整個頁面切換載入慢,網路不好則更慢。移動裝置上體驗不好

seo麻煩,需要單獨做

便於seo

開發難度:需要專門框來降低此模式

開發難度低

http://***/shell.html#page1 和 http://***/shell.html#page2

http://***/page1.html 和 http://***/page2.html

mpa改變標題

在react搭建的spa專案中頁面的title是直接寫在入口index.html中,當路由在切換不同頁面時,title是不會動態變化的。那麼怎麼讓title隨著路由的切換動態變化呢?

在定義路由時增加title屬性

),

title: "這是自定義的標題"

}

2.在路由的index.js獲取到自定義的title設定頁面標題即可。

const routewithsubroutes = route => }

/>

);};

export default () => )

};

另一種方式,用外掛程式獲取
import documenttitle from 'react-document-title';

單頁應用(SPA)和 多頁應用(MPA)

第一次進入頁面的時候會請求乙個html檔案,重新整理清除一下。切換到其他元件,此時路徑也相應變化,但是並沒有新的html檔案請求,頁面內容也變化了。原理 js會感知到url的變化,通過這一點,可以用js動態的將當前頁面的內容清除掉,然後將下乙個頁面的內容掛載到當前頁面上,這個時候的路由不是後端來做了...

單頁應用和多頁應用

每一次頁面跳轉的時候,後台伺服器都會給返回乙個新的html文件,這種型別的 也就是多頁 也叫做多頁應用。為什麼多頁應用的首屏時間快?首屏時間叫做頁面首個螢幕的內容展現的時間,當我們訪問頁面的時候,伺服器返回乙個html,頁面就會展示出來,這個過程只經歷了乙個http請求,所以頁面展示的速度非常快。為...

單頁應用 vs 多頁應用

web專案可分為單頁應用 和 多頁應用。單頁應用,就是只有乙個頁面,其他內容,估計就是動態載入,用從載入其他頁面片段 請求後台 這種方式來完成。這麼一說,我之前做的,其實都是多頁應用。相比之下,單頁應用的優勢是什麼呢?1 頁面切換非常快,不會出現白屏,還可以作出過渡效果 2 公用的js和css一次性...