什么叫单页面开发_获取当前页面url

什么叫单页面开发_获取当前页面url参考网址https://www.cnblogs.com/belongs-to-qinghua/p/11151054.htmlhttp://www.zhiliaotang.net/jishujiaoliu/web/965.html单页面开发:单页面开发常用于webapp开发和后台管理系统等单页面应用原理:我们通常所说的单页面应用程序通常是通过前端框架vue,react,angular…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

参考网址
https://www.cnblogs.com/belongs-to-qinghua/p/11151054.html
http://www.zhiliaotang.net/jishujiaoliu/web/965.html

单页面开发:
单页面开发常用于webapp开发和后台管理系统等
单页面应用原理:

我们通常所说的单页面应用程序通常是通过前端框架vue, react, angular进行开发,单页面程序将所有的活动局限于一个web页面中,仅在该web页面初始化时加载相应html,js和css,一旦页面加载完成,spa不会因为用户的操作而进行页面的重新加载或跳转,而是利用js动态的变换html的内容,从而实现ui与用户的交互,由于避免了页面的重新加载,spa可以提供较为流畅的用户体验

简单理解就是:
第一次进入页面时会请求一个html文件,刷新点击一下会切换到其他组件,此时路径也会相应的改变,但是并没有新的html文件的请求,原理是:
js会感知到url的变化,通过这一点,可以用js动态的将当前的页面内容清除掉,然后将下一个页面的内容挂载到当前页面上,就是所谓的路由,通过路由判断页面应该显示的组件,这种过程就是单页面应用,每次跳转不请求html文件,而是通过路由跳转来渲染组件

优点:

  • 页面切换快,良好的交互体检,因为每次切换页面时,不需要重新加载整个页面,不需要做html文件的请求,这样就节约了很多http发送时延,获取数据也是通过ajax异步获取,没有页面之间的切换,就不会出现白屏现象,也不会出现假死并有闪烁现象,页面显示流畅
  • 良好的前后端分离模式,后端不再负责模版渲染,输出页面工作,即同一套后端程序代码,不用修改就可以用于web界面,手机,平板等多种客户端
  • 减轻服务器压力,单页面相对服务器压力小,服务器只用于输出数据就可以,不用管展示逻辑和页面合成。吞吐能力会高好几倍

缺点

  • 首屏加载慢
    • 如果不对路由进行处理,在加载首页的时候,就会将所有组件全部加载,并向服务器请求数据,这就会拖慢加载速度
    • 通过查看network,发现整个网站加载时长长达十几秒,加载时间最长的就是js,css,图片

解决方案:

  • vue-router懒加载

    • vue懒加载就是按需加载,只有当路由被访问时才会加载对应的组件,而不是在加载首页的时候就加载,项目越大,对首屏的速度提升就越明显
      在这里插入图片描述
  • CDN加速
    – 在做项目时,我们会用到很多库,采用cdn加载可以加快加载速度

  • 服务器渲染, 服务器渲染还能对seo优化起到作用,有理由搜索引擎抓取更多游泳信息,如果页面纯前端渲染,搜索引擎抓取到的就只是空页面

不利于seo
seo本质就是一个服务器向另一个服务器发请求,解析请求内容,但是搜索引擎是不会去执行请求到的js的,也就是说搜索引擎的基础爬虫的原理就是抓取url,然后获取html源代码并解析,如果一个单页应用,html在服务器还没有渲染部分数据,在浏览器才渲染出数据,即搜索引擎请求的html是模型页面而不是最终数据的渲染页面,这样就很不利于内容被搜素引擎搜索到
seo效果差,因为搜索引擎只认识html的内容,不认识js的内容,而单页面应用的内容都是考js渲染生成出来的,搜索引擎不识别这部分内容,所以就不会给一个好排名,导致单页面应用做出来的网页在百度和谷歌上的排名差

解决方法:

  • 服务端渲染, 服务器合成完整的html问价再输出到浏览器
  • 页面预渲染
  • 路由采用h5的 historty模式

不适合开发大型项目
大型项目可能会涉及大量的dom操作,复杂的动画效果,也就不适合vue,react框架开发

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/182376.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Winform基础控件美化

    Winform基础控件美化这段时间重写了Winform的TextBox,ComboBox,NumericUpDown,DateTimePicker(还在实现中),Panel,Button控件主要实现了,这些控件的垂直居中,可自定义边框颜色等功能,支持fontawesome图标.效果见下图项目目录见下图Common是公共方法Control为继承类控件包括Button,Panel,(DateTime…

  • c语言编程a4988驱动步进电机,A4988 步进电机驱动模块测试[通俗易懂]

    c语言编程a4988驱动步进电机,A4988 步进电机驱动模块测试[通俗易懂]A4988控制逻辑简单,主要分为睡眠、正反转、复位、使能、细分等模式控制。(1)睡眠模式:Sleep管脚电平置0,进入睡眠模式,驱动器输出待机模式;Sleep管脚置1,驱动器处于正常工作状态;(2)正反转模式:正转模式DIR管脚置0或1,反转模式置1或0;(3)复位模式:复位模式下容易消耗能量,产生的冲击电流较大。直接RESET管脚置1,在不影响系统工作时RESET管脚置0复位。一旦驱动芯片复位,…

  • ACID、BASE和CAP原理

    ACID、BASE和CAP原理1.ACID   ACID,是指在数据库管理系统(DBMS)中,事务(transaction)所具有的四个特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation,又称独立性)、持久性(Durability)。  在数据库系统中,一个事务是指:由一系列数据库操作组成的一个完整的逻辑过程。例如银行转帐,从原账户扣除金额,以及向目标账户

  • CSS3选择器 | 每个前端开发者必须要掌握的技术

    CSS3选择器 | 每个前端开发者必须要掌握的技术目录属性选择符伪类选择符CSS3属性CSS3自适应属性选择符如果能够灵活运用属性选择器,目前为止需要依靠id或class名才能实现的样式完全可以使用属性选择器来实现。E[att]{}:选择具有att属性的E元素E[att=”val”]{}:选择具有att属性且属性值等于val的E元素E[att~=”val”]{}:用于选取属性值中包含指定词汇的元素E[att|=”val…

  • Centos搭建FASTDFS+NGINX

    Centos搭建FASTDFS+NGINX

  • 数学速算法_三年级数学时分秒换算口诀+精选思维奥数题整理汇总[通俗易懂]

    数学速算法_三年级数学时分秒换算口诀+精选思维奥数题整理汇总[通俗易懂]文末有打印方法时间单位换算口诀1世纪=100年1年=12月大月(31天)有:1月,3月,5月,7月,8月,10月,12月小月(30天)的有:4月,6月,9月,11月平年2月28天,闰年2月29天平年全年365天,闰年全年366天1日=24小时1时=60分1分=60秒1时=3600秒时间之间的进率都是601时=60分1分=60秒…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号