单页应用和多页应用

141 阅读1分钟

参考原文

一、定义

  1. 单页面应用(Single page applcation),指的是使用单个html完成多个页面切换和功能的应用,这些应用只有一个html文件作为入口,页面打开只需要加载一次js,css等相关资源。单页面应用跳转,只需要切换相关组件,仅需刷新局部资源。
  2. 多页应用(Multi Page Application)有多个独立页面的应用,每一个页面必须重复加载js,css等相关资源,多页面应用跳转,需要整页加载资源

二、单页面和多页面应用的区别

  1. 结构上的区别: SPA应用是由主页面+多个模块组成;MPA是多个完整页面组成
  2. 资源文件:SPA的公共资源只需加载一次, MPA则需要重复加载公共资源
  3. 刷新方式:SPA是页面局部刷新,MPA是整个页面刷新
  4. 路由模式:SPA支持hash路由和history,MPA则是链接跳转
  5. 数据在不同页面之间传输:SPA可以使用主流框架中的全局变量,路由,状态机等进行传输参数,MPA只能使用cookies、localStorage,url进行传输参数
  6. 首次加载:SPA在初次加载比较慢,MPA首次加载较快