天天看点

前端:你要懂的单页面应用和多页面应用

只有一张Web页面的应用,是一种从Web服务器加载的富客户端,单页面跳转仅刷新局部资源 ,公共资源(js、css等)仅需加载一次,常用于PC端官网、购物等网站

如图:

单页面应用结构视图

多页面跳转刷新所有资源,每个公共资源(js、css等)需选择性重新加载,常用于 app 或 客户端等

如图:

多页面应用结构视图

具体对比分析:

单页面应用(SinglePage Web Application,SPA)

多页面应用(MultiPage Application,MPA)

组成

一个外壳页面和多个页面片段组成

多个完整页面构成

资源共用(css,js)

共用,只需在外壳部分加载

不共用,每个页面都需要加载

刷新方式

页面局部刷新或更改

整页刷新

url 模式

a.com/#/pageone

a.com/#/pagetwo

a.com/pageone.html

a.com/pagetwo.html

用户体验

页面片段间的切换快,用户体验良好

页面切换加载缓慢,流畅度不够,用户体验比较差

转场动画

容易实现

无法实现

数据传递

容易

依赖 url传参、或者cookie 、localStorage等

搜索引擎优化(SEO)

需要单独方案、实现较为困难、不利于SEO检索 可利用服务器端渲染()优化

实现方法简易

试用范围

高要求的体验度、追求界面流畅的应用

适用于追求高度支持搜索引擎的应用

开发成本

较高,常需借助专业的框架

较低 ,但页面重复代码多

维护成本

相对容易

相对复杂