为什么要使用单页面应用

830 阅读1分钟

结合了各种说法,自己归总一下

传统的网页应用


传统的网页应用,浏览器作为展示层,路由处理、服务调用、页面跳转都由后端处理,即便有ajax,但也并不是标准的单页面应用。

这种网页应用的重心都在后端,后端几乎包揽了MVC,浏览器端仅是一个展示层

单页面应用


MVC前置到浏览器端,前端负责路由,各个小的组件组成页面,在路由变化时,不刷新整个页面,仅仅是组合小的组件,替换变化部分。甚至数据层也在前端,前端封装后端API,这种情况下,后端只是提供操作数据库的API

单页面应用的优点


  • 不刷新页面,相应快速,提升了用户体验
  • 前端组件化,代码的结构和组织更加规划化,利于修改和维护,并且可以开发独立的组件库,开发时直接使用即可,极大提高了开发效率
  • API共享,如果要多端开发(浏览器、微信、安卓、ios),只需要修改容易变化的前端UI,对后端API的调用基本是相同的,极大的降低了开发成本

单页面应用的缺点


  • 首次加载大量资源
  • 提高了前端的技术门槛
  • 不利于SEO,因为数据在前端渲染,动态的数据不利于爬虫抓取
  • 不方便使用浏览器自带的导航

参考