了解单页应用

Posted 哥哦狗子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了了解单页应用相关的知识,希望对你有一定的参考价值。

定义:

  单页Web应用(single page web application,SPA),就是只有一张Web页面的应用。单页应用程序 (SPA) 是加载单个html 页面并在用户与应用程序交互时动态更新该页面的Web应用程序。

  通俗点来讲,在应用整个使用流程里浏览器由始至终没有刷新,所有的数据交互由ajax完成。但是用户体验起来和app一样,有明确的页面区分,即所谓的web app。

  浏览器一开始会加载必需的HTML、CSS和javascript,所有的操作都在这张页面上完成,都由JavaScript来控制。因此,对单页应用来说模块化的开发和设计显得相当重要。

特点:

  速度:更好的用户体验,让用户在web app感受native app的速度和流畅,

  MVC:经典MVC开发模式,前后端各负其责。

  ajax:重前端,业务逻辑全部在本地操作,数据都需要通过AJAX同步、提交。

  路由:在URL中采用#号来作为当前视图的地址,改变#号后的参数,页面并不会重载。

优点:
  1、分离前后端关注点,前端负责界面显示,后端负责数据存储和计算,各司其职,不会把前后端的逻辑混杂在一起;
  2、减轻服务器压力,服务器只用出数据就可以,不用管展示逻辑和页面合成,吞吐能力会提高几倍;
  3、同一套后端程序代码,不用修改就可以用于Web界面、手机、平板等多种客户端;
缺点:
  1、SEO问题,现在可以通过Prerender等技术解决一部分;
  2、前进、后退、地址栏等,需要程序进行管理;
  3、书签,需要程序来提供支持;

以上是关于了解单页应用的主要内容,如果未能解决你的问题,请参考以下文章

单页应用程序 (JavaScript) 的架构

单页Web应用:

Vue2 + webpack + express4构建单页应用

可扩展的web单页应用程序架构

使用服务器端和客户端渲染的单页 ReactJS 应用程序?

在基于令牌的身份验证和单页应用程序中注销