单页面和多页面的网页差别比较(SPA)
| 单页面应用(singlePAge Web Application) | 多页面应用MultiPage Applicaton,MPA) | |
| 组成 | 一个外壳页面和多个页面片段组成 | 多个完整的页面组成 | 
| 资源公用(css,js) | 共用,只需在外壳部分加载 | 不共用,每个页面都需要重新加载 | 
| 刷新方法 | 页面局部刷新或更改 | 整页刷新 | 
| url模式 | a.com/#/pageone a.com/pagetwo | a.com/pageone.html a.com/pagetwo.html | 
| 用户体验 | 页面片段间切换快,用户体验良好 | 页面切换加载慢,流畅度不够,用户体验差 | 
| 转场动画 | 容易实现 | 无法实现 | 
| 数据传递 | 容易 | 依赖uri传参,或者cookie, localStorage等 | 
| 搜素引擎优化(seo) | 需要单独方案,实现比较困难,不利于seo检索,可利用 服务器端渲染(SSR)优化 | 容易实现 | 
| 适用范围 | 高要求的体验度,追求姐买你流畅的应用 | 适应于追求高支持搜索引擎的应用 | 
| 开发成本 | 较高,常需要借助专业的框架 | 较低,但是亚眠重复代码多 | 
| 维护成本 | 相对容易 | 相对复杂 | 
单页面和多页面的网页差别比较(SPA)的更多相关文章
- 不使用Ajax,如何实现表单提交不刷新页面
		不使用Ajax,如何实现表单提交不刷新页面? 目前,我想到的是使用<iframe>,如果有其他的方式,后续再补. 举个栗子: 在表单上传文件的时候必须设置enctype="mul ... 
- Vue-cli创建项目从单页面到多页面
		vue-cli创建项目从单页面到多页面 对于某些项目来说,单页面不能很好的满足需求,所以需要将vue-cli创建的单页面项目改为多页面项目. 需要修改以下几个文件: 1.下载依赖glob $npm i ... 
- Vue-cli创建项目从单页面到多页面2-history模式
		之前讲过怎样将vue-cli创建的项目改造成多页面(vue-cli创建项目从单页面到多页面),今天说一下怎样在多页面的前提下使用history模式. 如何使用history模式 因为vue默认的has ... 
- localStorage单页面及不同页面监听变动
		分析 H5本地存储有两个API,一个是Web Storage,还有一个是Web SQL.不管是哪一个,都是基于JavaScript语言来使用,而Web Storage提供了两种存储类型 API: s ... 
- Vue-cli创建项目从单页面到多页面4 - 本地开发服务器设置代理
		前后端分离开发时,有时候会遇到跨域的情况:只在开发的时候存在跨域,项目上线后,由于配置的域名相同,跨域就会不存在. 这个时候,有两种方案可以比较快的解决: 1.利用h5的特性,使用cors,在ngni ... 
- Vue-cli创建项目从单页面到多页面3-关于将打包后的项目文件不放在根目录下
		关于将打包后的项目文件不放在根目录下 有时候,我们总是需要这样的设置:希望将打包后的文件放在a.b.com/somepath/这样一个路径下. 然而在vue-cli创建的项目中,默认的打包路径中的静态 ... 
- 使用Java+NetBeans设计web服务和页面,用Tomcat部署网页
		一 安装NetBeans(自动安装jdk) 二 创建服务器 三 发布服务 一 安装NetBeans(自动安装jdk) 进入oracle的下载界面: http://www.oracle.com/tech ... 
- SharePoint 2013 入门教程之创建页面布局及页面
		在SharePoint的使用过程中,页面布局和页面时很重要的两个概念,主要用于数据个性化展示,下面,我们简单介绍一下SharePoint的页面布局和页面的个性化. 一. SharePoint页面模型概 ... 
- MVC 从后台页面 取前台页面传递过来的值的几种取法
		MVC 从后台页面 取前台页面传递过来的值的几种取法 <1>前台页面 Index视图 注意:用户名表单的name值为txtName 密码表单的name值为txtPassword & ... 
- WinPhone学习笔记(一)——页面导航与页面相关
		最近学一下Windows Phone(接下来简称“WinPhone”)的开发,在很久很久前稍探究一下WinPhone中对一些传感器的开发,那么现在就从头来学学WinPhone的开发.先从WinPhon ... 
随机推荐
- SSH(struts+spring+hibernate)常用配置整理
			SSH(struts+spring+hibernate)常用配置整理 web.xml配置 <?xml version="1.0" encoding="UTF-8&q ... 
- android基于MVP小说网络爬虫、宝贝社区APP、仿虎扑钉钉应用、滑动阴影效果等源码
			Android精选源码 android宝贝社区app源码 android仿Tinder最漂亮的一个滑动效果 android仿滴滴打车开具发票页,ListView粘性Header Android基于MV ... 
- 系统学习javaweb重点难点1--如何区分<input/>框里的三种常用属性:type属性 name属性 和 value属性
			感想:这是我系统学习javaweb的时候感觉这个是一个初学者十分容易搞混的点 学习笔记: 首先,是type属性. 表单输入项标签之一,用户可以在该标签上通过填写和选择进行数据输入. type属性设置该 ... 
- python初认函数
			今日所得 函数基本使用 函数的参数 函数的返回值 # 函数内要想返回给调用者值 必须用关键字return """ 不写return 只写return 写return No ... 
- C++中字符串的表示与转换
			转换总结 1.char*转string:可以直接赋值. 2.char[]转string:可以直接赋值. 3.char*转char[]:不能直接赋值,可以循环char*字符串逐个字符赋值,也可以使用st ... 
- 整数拆分-dp问题
			Integer Partition In number theory and combinatorics, a partition of a positive integer n, also call ... 
- js如何把a标签里面的值传递到函数里面
			----------------------a标签如何定 如何传参到函数---------------------- 1.<a></a>标签 如何传参到函数 <a cla ... 
- JAVA中String类的比较
			首先给大家看一段代码 package javaapptest; public class JavaAppTest { public static void main(String[] args) { ... 
- [BZOJ 3144][HNOI 2013] 切糕
			题目大意 切糕是 (p times q times r) 的长方体,每个点有一个违和感 (v_{x, y, z}).先要水平切开切糕(即对于每个纵轴,切面与其有且只有一个交点),要求水平上相邻两点的切 ... 
- Google在百慕大避税几十亿美金,为什么巨头和富豪都会选百慕大避税?
			为什么"越有钱越有钱"?为什么富豪只要不自己"作",就能让自己的财富疯狂增加?除了经营意识之外,关键他们还可以利用自己的资源.实力等去做很多看似让人不齿,但其实 ... 
