主题
对 SPA 的理解
通常会将 SPA 和 MPA 进行对比,下面是两者的主要区别:
| 特性 | SPA (单页面应用) | MPA (多页面应用) |
|---|---|---|
| 定义 | 整个应用只有一个 HTML 页面,页面切换通过 JavaScript 动态更新内容 | 每个页面都是独立的 HTML 文档,页面跳转需重新加载 |
| 渲染方式 | 客户端渲染(CSR),依赖 JavaScript 动态生成内容 | 服务器返回静态 HTML,页面跳转时重新请求完整页面 |
| 页面切换 | 无刷新局部更新,用户体验流畅 | 整页刷新,切换时有白屏现象 |
| SEO 友好性 | 较差(需配合 SSR 或预渲染优化) | 天然友好,每个页面有独立 URL 和内容 |
| 首次加载速度 | 较慢(需加载大量 JS 后才渲染) | 较快(直接返回预生成的 HTML) |
| 服务器压力 | 低(仅需提供 API 接口) | 高(每次页面跳转都需服务器处理) |
| 适用场景 | 交互性强、实时性要求高的应用(如后台系统、社交平台) | 内容型网站(如新闻、博客)、SEO 敏感场景 |
| 技术框架示例 | React、Vue、Angular | jQuery、Bootstrap |
