快速了解SPA单页面应用
- 简要
SPA单页网页应用程序这个概念并不算新,早在2003年就已经有在讨论这个概念了,不过,单页应用这个词是到了2005年才有人提出使用,SPA的概念就和它的名字一样显而易懂,就是整个网站不再像传统的HTML网页一样,需要每做一个动作就更新一次网页,而是像传统的电脑软件一样,只变更显示的内容而不需变更整个网页!概念很简单,但是,事实上却有不少的问题要考虑。
- 理解单页面应用
简单来说SPA的网页只会有一个网页,而这个网页的设计方式要能够回应使用者所使用的各种装置并且复制使用者在电脑上使用软件的经验,让使用者可以更容易和有效率的使用网站。怎么理解这句话呢?按照正常情况下我们会在一个页面中链接到其他的很多个页面,进行页面的跳转,但是如果我们使用单页面应用的话,我们始终在一个页面中,通常使用a标签的描点来实现。
- 单页面应用的优缺点
其实并不是所有开发者都觉得网页要以SPA的方式来开发,因为,有部份的人认为以SPA方式开发的网站不容易管理也不够安全,而且,因为没有了一页一页的网页给搜寻引擎的爬虫来爬,所以,在搜寻引擎最佳化(SEO)的工作上,需要花费额外的功夫才行,同时,因为没有换页,因此,需要自定状态来取代传统网页程序以网址来做判断!
SPA的需求应该是一直都有存在的,像网页游戏的网页就是一个明显的SPA的例子,只不过,在这之前,要写出SPA这样的网页的话,都是需要透过浏览器安装Flash之类的外挂来达成。
不过,近来拜HTML5 + CSS3 + Javascript UI Framework之赐,只要使用支持HTML5和CSS3的浏览器就可以执行复杂的SPA,因此,开发人员不必为了撰写SPA网站而特别学习另一种开发方式,而使用者也不用额外安装软件,所以,让开发SPA网页程式的入门和使用门槛降低不少! 不过,虽然SPA的开发和使用变的容易,但是,大部份的人有这样的想法,就是在现阶段来说,并不是所有的网站都适合采用SPA的方式来开发,而是像游戏和需要较多使用者操作的网页程式应该会比较合适,还有,就是需要被使用在不同装置的网页会比较有需要,而如果是一般的网页网站或单纯的内容网站的话,就不太适合,因为花费时间来将这类型的网站转换成SPA网站的话,并不一定会有比较好的效果和反应!
快速了解SPA单页面应用的更多相关文章
- Java快速开发平台强大的代码生成器,JEECG 3.7.5 VUE+ElementUI SPA单页面应用版本发布
JEECG 3.7.5 VUE+ElementUI SPA单页面应用版本发布 此版本为Vue+ElementUI SPA单页面应用版本,提供新一代风格代码生成器模板,采用Vue技术,提供两套精美模板E ...
- AngularJs(SPA)单页面SEO以及百度统计应用(上)
只有两种人最具有吸引力,一种是无所不知的人,一种是一无所知的人 问:学生问追一个女孩总是追不上怎么办?回答:女孩不是追来的,是吸引来的,你追的过程是吸引女孩的过程,如果女孩没有看上你,再追都是没有用的 ...
- 通过Blazor使用C#开发SPA单页面应用程序(3)
今天我们来看看Blazor开发的一些基本知识. 一.Blazor组件结构 Blazor中组件的基本结构可以分为3个部分,如下所示: //Counter.razor //Directives secti ...
- 快速构建H5单页面切换骨架
在Web App和Hybrid App横行的时代,为了拥有更好的用户体验,单页面应用顺势而生,单页面应用简称`SPA`,即Single Page Application,就是只有一个HTML页面的应用 ...
- 快速构建H5单页面切换应用
在Web App和Hybrid App横行的时代,为了拥有更好的用户体验,单页面应用顺势而生,单页面应用简称`SPA`,即Single Page Application,就是只有一个HTML页面的应用 ...
- 只需要4步就可以将asp.net mvc变成SPA(单页面)应用,实现无刷新页面切换!
SENNA.js Senna.js是一个超快速的单页面应用程序引擎,轻松构建基于Web的现代应用程序,只有大约8KB的JavaScript而没有任何依赖性.还提供非常酷炫的动画效果.想要详细了解的朋友 ...
- SPA单页面应用
什么是单页应用 单页Web应用,就是只有一张Web页面的应用.浏览器一开始会加载必需的HTML.CSS和JavaScript,之后所有的操作都在这张页面完成,这一切都由JavaScript来控制.因此 ...
- SPA(单页面web应用程序)
单页web应用(single page web application,SPA),就是只有一张web页面的应用,是加载单个HTML页面并在用户与应用程序交互时动态更新该页面的web应用程序. 浏览器一 ...
- 通过Blazor使用C#开发SPA单页面应用程序(1)
2019年9月23——25日 .NET Core 3.0即将在.NET Conf上发布! .NET Core的发布及成熟重燃了.net程序员的热情和希望,一些.net大咖也在积极的为推动.NET Co ...
随机推荐
- 使用TableViewRow完成下拉菜单效果
在TableViewRow标签中增加一个属性opened(自己定义的)=true or false 用于标记当前row的状态 然后用table_view.deleteRow()方法 参数 ...
- Mac下git命令自动补全
当我第一次在mac上安装git,[tab]补全装成功了,但是我没有记录,当我过一段时间在重装的时候,我已经忘记了,又是各种查资料,再次做一下简单的记录. 首先,我因为还是mac小白,所以使用Homeb ...
- Oozie命令行常用命令汇总[转]
Oozie命令行常用命令汇总 有时候脚本跑多了就不愿意在OozieWeb端去看脚本的运行情况了.还好Oozie提供了很多命令行命令.能通过命令行直接检索自己想看到的脚本信息.在这里简单进行一下总结.一 ...
- (转)C# foreach 中获取索引index的方法
在C# 开发中往往使用foreach 循环语句 来代替for循环语句.foreach 比 for 更加简洁高效. foreach : foreach ...
- Linux内核--网络栈实现分析(三)--驱动程序层+链路层(上)
本文分析基于Linux Kernel 1.2.13 原创作品,转载请标明http://blog.csdn.net/yming0221/article/details/7497260 更多请看专栏,地址 ...
- C++混合编程之idlcpp教程Python篇(6)
上一篇在这 C++混合编程之idlcpp教程Python篇(5) 第一篇在这 C++混合编程之idlcpp教程(一) 工程PythonTutorial4中加入了四个文件:PythonTutorial4 ...
- Knockoutjs 实践入门 (2) 绑定事件
Knockoutjs 绑定事件 Knockoutjs 不仅支持UI 元素的属性绑定到model的属性,还支持UI 元素的事件绑定model的事件. 需求: l click me button 每单击 ...
- 位运算(&)实现分享弹窗上的图标动态显示/隐藏
一 需求 要求自定义弹窗,上面动态显示多种分享平台,根据后台api接口传递过来的type控制显示哪些平台icon 1 定义平台变量,用2的几次方来定value 2 若要显示那 ...
- wex5&.net开发
一.环境开发 1.baas.net:菜单“窗口”->“首选项” 确定后左侧生成bass.net目录,设置iis网站目录(因为.net网站必须在iis中部署) 2.sqlserver:根据项目可选 ...
- 在CentOS6.5上安装MariaDB
昨天临下班的时候,在我的阿里云上面试装了PostgreSQL,可后来想想,似乎没什么必要使用他.主要是Navicat使用起来加自增key的时候,没有像MySQL那么方便啦. 因为公司用的已经是MySQ ...