• 前端代码优化(持续更新...)


     前言

    这个迭代开发需求比较少,就打算着手对项目进行一些优化,主要从代码优化和性能优化两个方面入手。仅以此篇随笔记录一下一些优化的要点,前端优化的路程漫漫,持续更新...

    1.css优化重构

    1)提高代码性能

      a.尽量将样式写在单独的css文件里面;单独css文件的好处:(1)内容和样式分离,易于管理和维护;(2)减少页面体积;(3)css文件可以被缓存、重用,维护成本降低

      b.不使用@import;import并不是引入代码到<style></style>里面,而是发起新的请求获得样式资源,并且没有加scoped;把@import改成<style src=""></style>引入外部样式,就可以解决样式是全局的问题

      c.避免使用复杂的选择器,层级越少越好;建议选择器的嵌套最好不要超过三层,简洁的选择器不仅可以减少css文件大小,提高页面的加载性能,浏览器解析时也会更加高效,也会提高开发人员的开发效率,降低了维护成本。

      d.精简页面的样式文件,去掉不用的样式;无效样式会造成(1)样式文件偏大,影响加载速度(2)浏览器会进行多余的样式匹配,影响渲染时间的问题。正确的处理方法是根据当前页面需要的css去合并那些当前页面用到的CSS文件;合并成一个文件有一个优点:样式文件会被浏览器缓存,进入到其他页面样式文件不用再去下载。

      e.利用CSS继承减少代码量;CSS中存在继承属性和非继承属性,区别是该属性的初始值是否使用父元素同属性的计算值。非继承属性可以通过指定值为inherit来实现继承。常见的可以继承的属性比如:color,font-size,font-family等等

    2)提高代码的可维护性

      a.命名与备注:命名要规范,见名思意

      b.提取重复样式:提取相同的样式成为一个单独的类再引用,这样不仅可以精简CSS文件大小,而且CSS代码变少,更易于重用和维护

      c.书写顺序:显示属性-->自身属性-->文本属性

        (1)位置属性(position, top, right, z-index, display, float等)
        (2)大小(width, height, padding, margin)
        (3)文字系列(font, line-height, letter-spacing, color- text-align等)
        (4)背景(background, border等)
        (5)其他(animation, transition等)

    2.不生成map文件

    vue项目打包之后的js会自动生成map文件

    map文件作用:项目打包后,代码是压缩加密的,如果运行时报错,输出的错误信息无法准确得知是哪里代码报错;map可以像未加密代码一样,输出是哪一行哪一列有错。

    如果不需要,可以找到config/index.js文件,修改productionSourceMap:false

    不生成map文件可以减少dist包的大小,加快部署时间。

    3.vue路由懒加载

    使用require或import实现路由按需加载;

    require将会告诉 webpack自动将代码切割成多个包,这些包会通过 Ajax 请求加载

    使用import关键字引入,这个import('XXX')函数会返回一个Promise对象

  • 相关阅读:
    linux_ext4恢复超级块.txt
    bayaim_Centos7.6_mysql源码5.7-多my.cnf_20190424.txt
    bayaim_Centos7.6_mysql源码5.7-multi_20190424.txt
    zhy2_rehat6_mysql04
    zhy2_rehat6_mysql03
    Neo4j安装,入门到深入了解完整教程
    程序员千万不要裸辞,对你没有任何好处
    减薪是变相的裁员所以我还是走吧
    python正则表达式匹配中文日期时间
    python用正则表达式匹配字符串里的日期
  • 原文地址:https://www.cnblogs.com/candy-xia/p/11760028.html
Copyright © 2020-2023  润新知