vue项目性能优化(图片优化)

一、图片保存阶段

ps 或 sketch 等图片,保存时或保存后,使用photoshop

  1. .jpg 图片选择 “连续”

在这里插入图片描述

  1. .png图片选择 “优化”

在这里插入图片描述

二、 图片压缩

  1. 访问 https://tinypng.com 对所有图片进行压缩,后替换(图片质量不变,可多图一起压缩)

三、 单色icon 使用iconfont

  1. 访问 http://www.iconfont.cn/ 上传和使用iconfont

四、制作雪碧图

1.一个网页可能有很多很多的小图标,就需要向服务器发送很多次访问请求,一是造成资源浪费,二是会导致访问速度变慢。这时候,把很多小图片(需要使用的小图标)放在一张图片上,按照一定的距离隔开,就解决了上述的两个问题。

显示雪碧图的条件:

1)需要一个设置好宽和高的容器

2)需要设置background-position的值(默认为(0,0),也就是图片的左上角),即移动图片到自己想要的图标位置。

调试方法:可以用浏览器自带的调试工具进行调试(如chrome浏览器按f12即可进行调试,慢慢移动background-position的值来达到理想的效果)

我们把表情放在一张图片上,图片的背景色为透明!
在这里插入图片描述
操作步骤:将图片向左移X个单位,然后向上移Y个单位,其中XY的具体数值是需要个人调试至合适位置得出的!

代码为:background-position:-xpx -ypx;

五、webpack打包、小图直接转base64

图片的处理

1.  小于8K的图片将直接以base64的形式内联在代码中,可以减少一次http请求。
2.  大于的呢?则直接file-loader打包, 这里并没有写明file-loader.但是确实是需要安装,否则会有问题
  1. 安装url-loader
  2. 安装file-loader
  cnpm install url-loader file-loader --save-dev
  1. 新建 vue.config.js 配置如下:
  chainWebpack: config => {
        config.module
          .rule('images')
          .use('url-loader')
          .loader('url-loader')
          .tap(options => Object.assign(options, { limit: 6800,esModule: false}))
      }

注意:修改里面的limit的数值即可修改图片进行base64转换文件的大小限制

  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Vue 3项目性能优化可以从多个方面入手。其中一种方法是利用计算属性的缓存机制来避免重复计算。计算属性允许我们定义一个属性,该属性的值是基于其他响应式属性的计算结果。在Vue 3中,计算属性的缓存是通过将计算结果保存在缓存中,只有在依赖的属性发生变化时才重新计算。这样可以避免不必要的计算,提高性能。例如,在组件的`created`生命周期钩子中访问计算属性时,只有在第一次访问时才会对计算属性进行求值,后续的访问会直接返回缓存的值。 另一种性能优化方法是使用分批运行组件的算法。这种算法可以在组件渲染时将渲染任务分批进行,以避免一次性渲染过多的组件导致性能问题。在Vue 3中,可以通过使用`v-if`指令结合自定义方法来控制组件的渲染优先级。例如,可以根据`displayPriority`的值来决定是否渲染某个组件,同时利用`requestAnimationFrame`来分批执行渲染任务,以减少性能压力。 此外,合理使用`v-for`指令也是Vue 3项目性能优化的一种方法。在使用`v-for`指令时,应尽量避免在循环中使用复杂的计算或访问其他组件的数据。根据Vue官方的风格指南,应该将循环中的计算或访问其他组件的数据尽量提前处理,并将结果保存在响应式属性中。这样可以减少在模板中的计算量,提高渲染性能。 综上所述,Vue 3项目性能优化可以通过合理利用计算属性的缓存机制、使用分批运行组件的算法以及优化`v-for`指令的使用来实现。这些方法可以有效地提高项目的性能,提升用户体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

star@星空

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值