SPA( single-page application )即一个web项目就只有一个页面(即一个HTML文件,HTML 内容的变换是利用路由机制实现的。


仅在 Web 页面初始化加载相应的 HTML、JavaScript 和 CSS。一旦页面加载完成,SPA 不会因为用户的操作而进行页面的重新加载或跳转;取而代之的是利用路由机制实现 HTML 内容的变换,UI 与用户的交互,避免页面的重新加载

优点:

  1. 用户体验好、快,内容的改变不需要重新加载整个页面,避免了不必要的跳转和重复渲染;
  2. 基于上面一点,SPA 相对对服务器压力小;
  3. 前后端职责分离,架构清晰,前端进行交互逻辑,后端负责数据处理;

缺点:

  1. 初次加载耗时多:为实现单页 Web 应用功能及显示效果,需要在加载页面的时候将 JavaScript、CSS 统一加载,部分页面按需加载;

  2. 前进后退路由管理:由于单页应用在一个页面中显示所有的内容,所以不能使用浏览器的前进后退功能,所有的页面切换需要自己建立堆栈管理;

  3. SEO 难度较大:由于所有的内容都在一个页面中动态替换显示,所以在 SEO 上其有着天然的弱势。

最新文章

  1. 2 . Linux常见命令
  2. jQuery 中对 CommonJs 的支持处理
  3. 文件和目录:access函数
  4. JavaScript基础---语言基础(1)
  5. find 和 locate 命令
  6. IOS版UC我的视频地址
  7. scala知识点(一)
  8. rpm打包工具---FPM
  9. maven 安装本地jar
  10. nginx非root安装
  11. java基础之Number
  12. python 在.py文件中调用其他.py内的函数
  13. java实现导入excel功能
  14. Intellij部署Tomcat问题
  15. 从源码角度一步一步来修改PreferenceActivity界面
  16. fnmatch源码阅读
  17. css 设置背景色
  18. 解决以showModalDialog打开的页面在提交表单时弹出新窗口的问题
  19. BZOJ 1050 旅行comf 并查集+枚举下界
  20. C++之extern关键字

热门文章

  1. 插入排序(CSP-J 2021 T2)我有新思路了,链接:https://www.cnblogs.com/wjk53233/p/16533752.html
  2. Vue06 数据绑定
  3. rosdep update 一直失败问题
  4. ASP.NET Core - 依赖注入(二)
  5. 高仿微信|基于Windows微信实现一个IM即时通讯App
  6. OpenLayers集成ECharts
  7. 图形学101 3 transform
  8. 银河麒麟V10安装MySQL5.7
  9. 【win+r】快速打开软件
  10. K8存储之ConfigMap、Secret