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

国家住房城乡建设部网站南京市企业展厅设计公司

国家住房城乡建设部网站,南京市企业展厅设计公司,网站里添加聊天框怎么做,知乎 网站建设一、什么是首屏加载 首屏时间#xff08;First Contentful Paint#xff09;#xff0c;指的是浏览器从响应用户输入网址地址#xff0c;到首屏内容渲染完成的时间#xff0c;此时整个网页不一定要全部渲染完成#xff0c;但需要展示当前视窗需要的内容 首屏加载可以说… 一、什么是首屏加载 首屏时间First Contentful Paint指的是浏览器从响应用户输入网址地址到首屏内容渲染完成的时间此时整个网页不一定要全部渲染完成但需要展示当前视窗需要的内容 首屏加载可以说是用户体验中最重要的环节 关于计算首屏时间 利用performance.timing提供的数据 通过DOMContentLoad或者performance来计算出首屏时间 // 方案一 document.addEventListener(DOMContentLoaded, (event) {console.log(first contentful painting); }); // 方案二 performance.getEntriesByName(first-contentful-paint)[0].startTime// performance.getEntriesByName(first-contentful-paint)[0] // 会返回一个 PerformancePaintTiming的实例结构如下 {name: first-contentful-paint,entryType: paint,startTime: 507.80000002123415,duration: 0, };二、加载慢的原因 在页面渲染的过程导致加载速度慢的因素可能如下 网络延时问题资源文件体积是否过大资源是否重复发送请求去加载了加载脚本的时候渲染内容堵塞了 三、解决方案 常见的几种SPA首屏优化方式 减小入口文件积静态资源本地缓存UI框架按需加载图片资源的压缩组件重复打包开启GZip压缩使用SSR 减小入口文件体积 常用的手段是路由懒加载把不同路由对应的组件分割成不同的代码块待路由被请求的时候会单独打包路由使得入口文件变小加载速度大大增加 在vue-router配置路由的时候采用动态加载路由的形式 routes:[ path: Blogs,name: ShowBlogs,component: () import(./components/ShowBlogs.vue) ]以函数的形式加载路由这样就可以把各自的路由文件分别打包只有在解析给定的路由时才会加载路由组件 静态资源本地缓存 后端返回资源问题 采用HTTP缓存设置Cache-ControlLast-ModifiedEtag等响应头 采用Service Worker离线缓存 前端合理利用localStorage UI框架按需加载 在日常使用UI框架例如element-UI、或者antd我们经常性直接引用整个UI库 import ElementUI from element-ui Vue.use(ElementUI)但实际上我用到的组件只有按钮分页表格输入与警告 所以我们要按需引用 import { Button, Input, Pagination, Table, TableColumn, MessageBox } from element-ui; Vue.use(Button) Vue.use(Input) Vue.use(Pagination)件重复打包 假设A.js文件是一个常用的库现在有多个路由使用了A.js文件这就造成了重复下载 解决方案在webpack的config文件中修改CommonsChunkPlugin的配置 minChunks: 3minChunks为3表示会把使用3次及以上的包抽离出来放进公共依赖文件避免了重复加载组件 图片资源的压缩 图片资源虽然不在编码过程中但它却是对页面性能影响最大的因素 对于所有的图片资源我们可以进行适当的压缩 对页面上使用到的icon可以使用在线字体图标或者雪碧图将众多小图标合并到同一张图上用以减轻http请求压力。 开启GZip压缩 拆完包之后我们再用gzip做一下压缩 安装compression-webpack-plugin cnmp i compression-webpack-plugin -D在vue.congig.js中引入并修改webpack配置 const CompressionPlugin require(compression-webpack-plugin)configureWebpack: (config) {if (process.env.NODE_ENV production) {// 为生产环境修改配置...config.mode productionreturn {plugins: [new CompressionPlugin({test: /\.js$|\.html$|\.css/, //匹配文件名threshold: 10240, //对超过10k的数据进行压缩deleteOriginalAssets: false //是否删除原文件})]}}在服务器我们也要做相应的配置 如果发送请求的浏览器支持gzip就发送给它gzip格式的文件 我的服务器是用express框架搭建的 只要安装一下compression就能使用 const compression require(compression) app.use(compression()) // 在其他中间件使用之前调用使用SSR SSRServer side 也就是服务端渲染组件或页面通过服务器生成html字符串再发送到浏览器 从头搭建一个服务端渲染是很复杂的vue应用建议使用Nuxt.js实现服务端渲染 小结 减少首屏渲染时间的方法有很多总的来讲可以分成两大部分 资源加载优化 和 页面渲染优化 下图是更为全面的首屏优化的方案 大家可以根据自己项目的情况选择各种方式进行首屏渲染的优化 参考文献 https://zhuanlan.zhihu.com/p/88639980?utm_sourcewechat_sessionhttps://www.chengrang.com/how-browsers-work.htmlhttps://juejin.cn/post/6844904185264095246https://vue3js.cn/docs/zh
http://www.pierceye.com/news/444509/

相关文章:

  • 深圳企业网站制作公司介绍悠悠我心个人网站模板
  • 济宁梵盛科技网站建设建筑工程分包信息网络平台
  • wordpress设置网站主题网站建设合作加盟
  • 河南网站设计价格dede手机网站开发
  • 搭建网站需要什么服务器网络推广属于什么专业
  • 邮轮哪个网站是可以做特价胃肠的个人养老保险缴费档次
  • 如何找到网站是谁做的南昌做网站哪家最好
  • 深圳三玉网站建设wordpress 左侧边栏
  • 保健食品东莞网站建设wordpress左边菜单
  • 江苏营销型网站建设公司good建筑网站
  • 免费申请网站永久域名如何写网站建设方案书
  • 艺术字logo生成器北京seo专业团队
  • 原创网站模版企业网站类型有哪些
  • 网站该怎么做链接百度广告联盟看广告赚钱
  • 上海网站制作全包深圳创业补贴政策2021申请流程
  • 自己怎么制作一个网站wordpress 取消赞
  • 收到短信说备案被退回但工信部网站上正常啊网络营销师是干什么的
  • 公司怎么建立网站成都创软科技的口碑
  • 帝国cms是个人网站网站建设超速云免费
  • wix做的网站wordpress显示数据库请求
  • 设计好的网站百度网站建设费用多少知乎
  • 廊坊网站制作wordpress 文章id排序
  • 湖南中小企业建站价格绍兴seo推广公司
  • 襄樊门户网站建设营销策略怎么写范文
  • 北京网站关键词优化软文广告案例500字
  • 灌云网站建设维护手机网站建站步骤论文
  • 各大网站平台发布信息山亭网站建设
  • 做网站.服务器怎么买公司网站如何上传视频
  • 广州建设工程造价信息网长春百度网站优化
  • 郑州外贸网站建设公司价格wordpress禁止百度抓取