当前位置: 首页 > news >正文

沈阳企业黄页免费哈尔滨做网站优化

沈阳企业黄页免费,哈尔滨做网站优化,电子商务网站建设携程,网站建设都有什么栏目一、什么是SPA SPA#xff08;single-page application#xff09;#xff0c;翻译过来就是单页应用SPA是一种网络应用程序或网站的模型#xff0c;它通过动态重写当前页面来与用户交互#xff0c;这种方法避免了页面之间切换打断用户体验在单页应用中#xff0c;所有必…一、什么是SPA SPAsingle-page application翻译过来就是单页应用SPA是一种网络应用程序或网站的模型它通过动态重写当前页面来与用户交互这种方法避免了页面之间切换打断用户体验在单页应用中所有必要的代码HTML、JavaScript和CSS都通过单个页面的加载而检索或者根据需要通常是为响应用户操作动态装载适当的资源并添加到页面页面在任何时间点都不会重新加载也不会将控制转移到其他页面举个例子来讲就是一个杯子早上装的牛奶中午装的是开水晚上装的是茶我们发现变的始终是杯子里的内容而杯子始终是那个杯子结构如下图 我们熟知的JS框架如react,vue,angular,ember都属于SPA 二、SPA和MPA的区别 上面大家已经对单页面有所了解了下面来讲讲多页应用MPAMultiPage-page application翻译过来就是多页应用在MPA中每个页面都是一个主页面都是独立的当我们在访问另一个页面的时候都需要重新加载html、css、js文件公共文件则根据需求按需加载如下图 单页应用与多页应用的区别 单页应用优缺点 优点 具有桌面应用的即时性、网站的可移植性和可访问性 用户体验好、快内容的改变不需要重新加载整个页面 良好的前后端分离分工更明确 缺点 不利于搜索引擎的抓取 首次渲染速度相对较慢 三、实现一个SPA 原理 监听地址栏中hash变化驱动界面变化 用pushsate记录浏览器的历史驱动界面发送变化 实现 hash 模式 核心通过监听url中的hash来进行路由跳转 // 定义 Router class Router { constructor () { this.routes {}; // 存放路由path及callback this.currentUrl ; // 监听路由change调用相对应的路由回调 window.addEventListener(load, this.refresh, false); window.addEventListener(hashchange, this.refresh, false); } route(path, callback){ this.routes[path] callback; } push(path) { this.routes[path] this.routes[path]() } } // 使用 router window.miniRouter new Router(); miniRouter.route(/, () console.log(page1)) miniRouter.route(/page2, () console.log(page2)) miniRouter.push(/) // page1 miniRouter.push(/page2) // page2 history模式 history 模式核心借用 HTML5 history apiapi 提供了丰富的 router 相关属性先了解一个几个相关的api history.pushState 浏览器历史纪录添加记录history.replaceState修改浏览器历史纪录中当前纪录history.popState 当 history 发生变化时触发 // 定义 Router class Router { constructor () { this.routes {}; this.listerPopState() } init(path) { history.replaceState({path: path}, null, path); this.routes[path] this.routes[path](); } route(path, callback){ this.routes[path] callback; } push(path) { history.pushState({path: path}, null, path); this.routes[path] this.routes[path](); } listerPopState () { window.addEventListener(popstate , e { const path e.state e.state.path; this.routers[path] this.routers[path]() }) } } // 使用 Router window.miniRouter new Router(); miniRouter.route(/, () console.log(page1)) miniRouter.route(/page2, () console.log(page2)) // 跳转 miniRouter.push(/page2) // page2 四、题外话如何给SPA做SEO 下面给出基于Vue的SPA如何实现SEO的三种方式 SSR服务端渲染 将组件或页面通过服务器生成html再返回给浏览器如nuxt.js 四、题外话如何给SPA做SEO 下面给出基于Vue的SPA如何实现SEO的三种方式 SSR服务端渲染 将组件或页面通过服务器生成html再返回给浏览器如nuxt.js 静态化 目前主流的静态化主要有两种1一种是通过程序将动态页面抓取并保存为静态页面这样的页面的实际存在于服务器的硬盘中2另外一种是通过WEB服务器的 URL Rewrite的方式它的原理是通过web服务器内部模块按一定规则将外部的URL请求转化为内部的文件地址一句话来说就是把外部请求的静态地址转化为实际的动态页面地址而静态页面实际是不存在的。这两种方法都达到了实现URL静态化的效果 使用Phantomjs针对爬虫处理 原理是通过Nginx配置判断访问来源是否为爬虫如果是则搜索引擎的爬虫请求会转发到一个node server再通过PhantomJS来解析完整的HTML返回给爬虫 目前主流的静态化主要有两种1一种是通过程序将动态页面抓取并保存为静态页面这样的页面的实际存在于服务器的硬盘中2另外一种是通过WEB服务器的 URL Rewrite的方式它的原理是通过web服务器内部模块按一定规则将外部的URL请求转化为内部的文件地址一句话来说就是把外部请求的静态地址转化为实际的动态页面地址而静态页面实际是不存在的。这两种方法都达到了实现URL静态化的效果 使用Phantomjs针对爬虫处理 原理是通过Nginx配置判断访问来源是否为爬虫如果是则搜索引擎的爬虫请求会转发到一个node server再通过PhantomJS来解析完整的HTML返回给爬虫
http://wiki.neutronadmin.com/news/328942/

相关文章:

  • 资讯网站域名选购网站设计 做鼠标效果
  • 手机端开发网站模板下载百度旗下的外贸建站公司
  • 衡水教育行业网站建设3d建模素材网
  • 企业建设网站公司网站建设报告实训步骤
  • 美妆企业网站模板网站qq弹窗
  • wordpress网站如何提速哪个公司的管理咨询公司
  • 门户网站建设 交流发言第一成品网站超市
  • 深圳大浪网站建设淄博网站建设乐达推广
  • 企业网站建设立项书wordpress如何精简导航代码
  • 做网站 证书 浏览器易语言如何做网站登录
  • 不花钱的网站怎么做内蒙古呼和浩特网站建设
  • 网站建设 青海免费网站站
  • 做网站530元张家港网站建设培训
  • 建设网站哪个便宜建站及推广
  • 海南省交通建设局网站广东双语网站建设多少钱
  • 网站设计工作内容企业运营策划公司
  • 怎么做淘宝优惠卷网站网站访问对应二级域名
  • 电子商务网站建设平台网站建设 山东
  • 郑州做网站锐青白江建设网站
  • 手机销售网站的设计与实现主流网站
  • 南皮县网站建设wordpress y郁思注意
  • 网站开发哪种框架google官网入口注册
  • 南宁建设银行缴费网站郑州官网首页
  • 大连金州新区规划建设局网站连云港网站关键词优化
  • 定边网站建设大型网站开发教程
  • shopify建站最全教程网页设计与制作实例教程
  • 如何用自己的域名做网站网站备案和域名备案区别
  • 沈阳网站公司哪个好ps网站设计怎么做
  • 小程序公司平台开发重庆seo研究中心
  • 老徐蜂了网站策划书wordpress视频云存储