SPA和MPA的区别
SPA
SPA
全称single page application
,它只实际上只加载了一个页面,在页面中采用路由机制实现HTML内容的转换,达到页面切换的效果,减少了页面的重新加载。
优点
- 用户体验相比传统的MPA要好很多,速度快,内容变化也不用重新加载整个页面。
- 对服务器的压力也比较少
- 前后端分离,前端只负责交互逻辑,后端负责数据处理
缺点
- 首次加载耗时长,通常会在
index.html
先追加一个loading
效果,防止白屏 SEO
难度比较大,无法被搜索引擎获取到数据
MPA
MPA
全称Multi page application
,在每一次页面跳转的时候都会重新加载一个完整的html
页面
优点
- 首屏加载速度快
SEO
优化较好,可以被搜索引擎识别出来
缺点
- 切换页面时体验没有
SPA
好
不同之处
- 构成不一样,
MPA
是多个页面的,SPA
是一个页面,多个DOM
构成的 - 跳转方式不同,
MPA
是一个页面跳转到另外一个页面,SPA
是假跳转,通过操作DOM
的方式实现 - URL模式不同,
SPA
是完整的URL
模式,SPA
是通过/path/
方式模拟 - 用户体验不同,
SPA
在移动设备上体验更好 SEO
优化,MPA
可以直接处理,而MPA
需要额外方案处理- 转场动画实现,
MPA
无法实现,SPA
可以实现