目录

定义

单页面

多页面

区别

刷新的方式

路由模式

结构

维护成本

加载资源文件

开发的成本

用户体验

转场动画

数据传递

搜索引擎优化(SEO)

使用范围


定义

单页面

只有一个对应的html页面,一开始需要加载js、css等所有的相关资源(刚开加载会很慢)。所有内容都包含在主页面,对每一个功能模块组件化。页面的切换其实就是组件的切换、所有跳转方式都是通过组件切换完成的!

多页面

每个页面都是独立的HTML文件都需要去加载js、cssd等文件2跳转的时候通过刷新页面从而去重新加载新的HTML页面!

区别

刷新的方式

单页面:页面进行的局部刷新、组件之间的开会切换

多页面:整个页面都去刷新

路由模式

单页面:单页面的路由有hash、history(默认是hash路由)

多页面:标签等方式的跳转

结构

单页面:一个主页面+多个模块

多页面:多个完整的HTML页面

维护成本

单页面:开销小、维护简单

多页面:相对单页面开说比较复杂

加载资源文件

单页面:多个静态资源只需要加载一次

多页面:每个页面都需要去请求静态资源

开发的成本

单页面:成本较高,需要专业的框架人员

多页面:开发成本较低,但代码重复性高

用户体验

单页面:页面片段间时间的切换快,用户体验良好,当初次加载文件过多时,需要做相关调优。

多页面:页面切换加载缓慢,流畅度不够,用户体验比较差,尤其网速慢的时候

转场动画

单页面:容易实现转场动画

多页面:无法实现转场动画

数据传递

单页面:容易实现数据传递,方法有很多(通过路由带参数传值,Vuex传值等等)

多页面:依赖url传参,cookie,本地存储

搜索引擎优化(SEO)

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

多页面:实现方法容易

使用范围

单页面:高要求的体验度,追求界面流畅的应用

多页面:适用于追求高度支持搜索引擎的应用

(面试)单页面和多页面区别?相关推荐

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

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

  2. 静态页面和动态页面的区别

    静态页面和动态页面的区别 一.静态web页面: 1.在静态Web程序中,客户端使用Web浏览器(IE.FireFox等)经过网络(Network)连接到服务器上,使用HTTP协议发起一个请求(Requ ...

  3. web 静态页面和动态页面的区别

    文章目录 一.静态web页面: 二.动态web页面: 为什么需要web服务器?(web server) 三.关于两者区别的简单直接的描述 四.实验测试 一.静态web页面: 1.在静态Web程序中,客 ...

  4. 什么是静态的html页面,什么是静态页面?什么是动态页面?二者有什么区别

    一.什么是静态页面 1.在静态html页面中,用户通过Web浏览器HTTP协议向web服务器发送一个响应请求,告诉web服务器要浏览这个网站的哪个页面,接着根据用户的响应请求返回一个html页面给用户 ...

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

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

  6. asp是什么文件?html和asp的区别?(HTML是客户端语言,主要用于创建静态网页;asp是服务器端语言,用于设计用户交互式页面或动态页面)

    1.HTML是一种客户端语言,它允许Web浏览器解析并显示在标签之间写入的内容,允许把图像和对象嵌入到网页中.ASP是一种服务器端语言,这意味着写入的代码将被发送到服务器中,并根据要求执行的操作返回一 ...

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

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

  8. 不使用Ajax,如何实现表单提交不刷新页面

    不使用Ajax,如何实现表单提交不刷新页面? 目前,我想到的是使用<iframe>,如果有其他的方式,后续再补. 举个栗子: 在表单上传文件的时候必须设置enctype="mul ...

  9. asp.net之动态页面和静态页面的区别

    asp.net之动态页面和静态页面的区别 当我开始接触web开发的时候,首先学到的是html.css.js这一类网页语言,通过布局可以搭建出一个静态网站,效果也跟我们上网时经常看到的一些网站一样了.于 ...

最新文章

  1. osgearth+vs2010安装
  2. 熬夜彻底搞懂Cookie Session Token JWT
  3. mysql怎么执行任务_Mysql怎么定时执行任务
  4. 实现Unity编辑器模式下的旋转
  5. 1286:怪盗基德的滑翔翼-2019-07-03(《信息学奥赛一本通》)
  6. webpack 入门总结和实践(按需异步加载,css单独打包,生成多个入口文件)
  7. 无效的变量名c语言,变量方法用法 _C语言-w3school教程
  8. manjaro linux无线网卡,为 Manjaro 18.1.4 配置无线网卡
  9. allergro音乐术语什么意思_常见音乐术语(速度术语)
  10. 大一期末项目:学生管理系统
  11. 比尔盖茨的风流情史,妻子同意他与前女友同居,婚内出轨损失 80 亿
  12. HTML5在线摄像头应用
  13. NOC2021年测试卷3
  14. eSIM卡业务开通地区
  15. 基于python-opencv的HOG特征提取和使用cv2.HOGDescriptor()
  16. 再谈机器学习中的归一化方法(Normalization Method)
  17. 02-JVM堆里面的分区:Eden,survival (from+ to),老年代,各自的特点?
  18. AMM敏捷成熟度评估框架介绍
  19. 未来谁才是移动互联网的入口?
  20. 【转载】CPU散热器详解

热门文章

  1. word常用快捷键、操作及实例:
  2. c lib rdkafka接口说明
  3. MongoDB-4.4.2单机安装以及副本集配置
  4. HINT: Must be superuser to create this extension.
  5. 戴文渊2018亚布力论坛闭幕演讲:AI泡沫是否会破裂?关键看落地
  6. 面试官最爱问的问题背后真相
  7. 铁锈战争虚拟服务器,铁锈战争王者之战(两周年庆)
  8. 结对作业2——自动生成四则运算
  9. Win10系统跳过pin设置的操作方法
  10. ArcGIS Runtime SDK for iOS 开发之地图范围(map extent)