单页面应用和多页面应用

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

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

多页面应用(MultiPage Application,MPA)

多页面跳转刷新所有资源,每个公共资源(js、css等)需要选择性重新加载,常用于APP或客户端等。
如图:
单页面应用和多页面应用_第2张图片

具体对比分析:

单页面应用(SinglePage Web Application,SPA) 多页面应用(MultiPage Application,MPA)
组成 一个外壳页面和多个页面片段 多个完整页面
资源共用(js, css) 共用,只在外壳部分加载 不共用,每个页面都需要加载
刷新方式 页面局部刷新或更改 整页刷新
url模式 a.com/#/pageone
a.com/#/pagetwo
a.com/pageone.html
a.com/pagetwo.html
用户体验 页面片段间的切换快,用户体验良好 页面切换加载缓慢,流畅度不够,用户体验较差
转场动画 容易实现 无法实现
数据传递 容易 依赖url传参、cookie、localStorage等
搜索引擎优化(SEO) 需要独立方案、实现较为困难、不利于SEO检索,可利用服务器渲染(SSR)优化 实现方法简易
适用范围 高要求的体验度、追求界面流畅的应用 适用于追求高度支持搜索引擎的应用
开发成本 较高,常需借助专业的框架 较低,但页面重复代码多
维护成本 相对容易 相对复杂

你可能感兴趣的:(前端)