定义

SPA单页面应用(SinglePage Web Application),指只有一个主页面的应用(一个html页面),一开始只需要加载一次js、css的相关资源。所有内容都包含在主页面,对每一个功能模块组件化。单页应用跳转,就是切换相关组件,仅仅刷新局部资源。

MPA多页面应用(MultiPage Application),指有多个独立页面的应用(多个html页面),每个页面必须重复加载js、css等相关资源。多页应用跳转,需要整页资源刷新。

一张图读懂单页面与多页面的区别:

区别

1.刷新方式

  • SPA:相关组件切换,页面局部刷新或更改
  • MPA:整页刷新

2.路由模式

  • SPA:可以使用hash,也可以使用history
  • MPA:普通链接跳转

3.用户体验

  • SPA:页面片段间时间的切换快,用户体验良好,当初次加载文件过多时,需要做相关调优。
  • MPA:页面切换加载缓慢,流畅度不够,用户体验比较差,尤其网速慢的时候

4.转场动画

  • SPA:容易实现转场动画
  • MPA:无法实现转场动画

5.数据传递

  • SPA:容易实现数据传递,方法有很多(通过路由带参数传值,Vuex传值等等)
  • MPA:依赖url传参,cookie,本地存储

6.搜索引擎优化(SEO)

  • SPA:需要单独方案,实现较为困难,不利于SEO检索,可利用服务器端渲染(SSR)优化
  • MPA:实现方法容易

7.使用范围

  • SPA:高要求的体验度,追求界面流畅的应用
  • MPA:适用于追求高度支持搜索引擎的应用

8.开发成本

  • SPA:较高,长需要借助专业的框架
  • MPA:较低,但也页面代码重复的多

9.维护成本

  • SPA:相对容易
  • MPA:相对复杂

10.结构

  • SPA:一个主页面+许多模块的组件
  • MPA:许多完整的页面

11.资源文件

  • SPA:组件公用的资源只需要加载一次
  • MPA:每个页面都需要自己加载公用的资源

Vue单页面与多页面的区别相关推荐

  1. Vue—单页面应用与多页面应用的区别

    目录 一.概念 二.区别 一.概念 多页面应用 多页面应用,翻译为multi-page application,简称MPA.多页面应用是指每次页面跳转时,后台服务器都会返回一个新的HTML文档. 单页 ...

  2. vue单页面改造多页面应用

    单页面和多页面的区别这里就不细说了.我司业务适合多页面,许多小应用都是通过iframe整体嵌入的形式. 如果项目过于庞大,就会有很不好的体验问题. 拆分多个项目的话,又会有额外的开支,如服务器资源部署 ...

  3. 单页面与多页面的区别

    之前在一个视频面试的时候,被面试官问到这个问题,结果自己混乱答了一下,后面才发现自己混淆了它们的概念,所以特地来学习一下单页面和多页面的区别. 单页面,顾名思义只有一个界面.(SinglePage W ...

  4. app怎么嵌套vue页面_app内嵌vue单页面应用的一些坑

    写这篇文章的原因是想总结一下自己最近开发的一个内嵌app的vue单页面项目,看看有哪些坑!!! 1.白屏 项目第一次上线正常 项目第二次上线,20多个用户反馈白屏(没见过这世面,心里慌的不行!!!), ...

  5. Nginx 解决WebApi跨域二次请求以及Vue单页面问题

    Nginx 解决WebApi跨域二次请求以及Vue单页面问题 参考文章: (1)Nginx 解决WebApi跨域二次请求以及Vue单页面问题 (2)https://www.cnblogs.com/ji ...

  6. nginx配置解决vue单页面打包文件大,首次加载慢的问题

    nginx配置解决vue单页面打包文件大,首次加载慢的问题 参考文章: (1)nginx配置解决vue单页面打包文件大,首次加载慢的问题 (2)https://www.cnblogs.com/golo ...

  7. nignx部署Vue单页面刷新路由404问题解决

    nignx部署Vue单页面刷新路由404问题解决 参考文章: (1)nignx部署Vue单页面刷新路由404问题解决 (2)https://www.cnblogs.com/wuchenggong/p/ ...

  8. vue 添加完数据后刷新页面_vue form 表单提交后刷新页面的方法

    最近做的项目中,有增删改表格功能,在操作后需要实时更新页面数据.下面可以这样解决. 1.在methods中 定义好一个初始化渲染实例. 例如 lnitializationData(){//初始化页面数 ...

  9. fullpage在vue单页面当中使用会出现的问题以及解决办法

    fullpage在vue单页面当中使用会出现的问题以及解决办法 参考文章: (1)fullpage在vue单页面当中使用会出现的问题以及解决办法 (2)https://www.cnblogs.com/ ...

  10. php vue seo,处理 Vue 单页面 SEO 的另一种思路

    (设置vue 单页面meta info信息,如果需要单页面SEO,可以和 prerender-spa-plugin形成更优的配合) 单页面应用在前端正大放光彩.三大框架 Angular.Vue.Rea ...

最新文章

  1. CentOS 7 添加系统开机服务
  2. MySQL下备份和恢复简单介绍
  3. DWR提示DWRUtil未定义的问题
  4. 多线程编程4 - GCD
  5. update,options
  6. javascript立即调用的函数表达式
  7. LeetCode 126 单词接龙 II
  8. mysql 什么是子查询_MySQL 子查询
  9. java set取最大最小_Java中取得数组中最大(小)元素的几种实现方法
  10. Android studio 2.3版本出现的问题: Please select at least one of the signature versions to use
  11. JAVA面试要点002_Git中fetch和pull的区别
  12. 丽江,是否一群失意的人聚合地
  13. 基于SSM的小区报修系统
  14. 电脑故障速查方法集萃
  15. 疯狂Java讲义(十三)----第一部分
  16. 英语单词-每天10个
  17. 广域网的应用场景是什么?
  18. 做服务器销售两个月还没开单,1月15日的销售欠款,2月20日做的收款单,为什么没有...
  19. Redux的工作流程
  20. python编程:从入门到实践 阅读笔记

热门文章

  1. 【TF2.0-CNN】使用ImageDataGenerator生成训练数据
  2. Valine添加自定义表情
  3. Windows补丁查询地址
  4. Left-pad 分数 20作者 陈越单位 浙江大学
  5. 怦然心动(Flipped)-7
  6. 【算法】麦克风阵列的自适应降噪算法
  7. 腾讯云接入备案流程 新手必看教程
  8. 秒杀工具 吃鲸秒杀
  9. DiMP:Learning Discriminative Model Prediction for Tracking
  10. desc查询表字段信息