SPA 单页面
对 SPA 单页面的理解,它的优缺点分别是什么?
SPA 应用就是一个 web 应用,可理解为:是一种只需要将单个页面加载到服务器之中
的 web 应用程序。当浏览器向服务器发出第一个请求时,服务器会返回一个 index.html
文件,它所需的 js,css 等会在显示时统一加载,部分页面需要时加载。
优点:
1.良好的交互式体验。意思是:用户无需刷新页面,获取数据通过异步 ajax 获取,页
面显示流畅
2.良好的前后端分离模式(
MVVM),减轻服务端压力。服务器只需要输出数据就可以,
不用管逻辑和页面展示,吞吐能力会提高几倍
3.共用同一套后端程序代码,不用修改就可用于 web 界面,手机和平板等客户端设备
缺点:
1.不利于 SEO 优化
2.由于单页应用在一个页面中显示,所以不可以使用浏览器自带的前进后退功能,想要
实现页面切换需要自己进行管理
3.首屏加载过慢(初次加载耗时多),原因是:为了实现单页 web 应用功能及展示效果,
在页面初始化的时候就会将 js,css 等统一加载,部分页面在需要时加载。当然也有解决
方法。
解决方法:①使用路由懒加载 ②开启 Gzip 压缩 ③使用 webpack 的 externals 属性把不
需要的库文件分离出去,减少打包后文件的大小 ④使用 vue 的服务端渲染(SSR)