日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

5.25秒變0.023秒:小程序圖片優化全攻略

來源: 責編: 時間:2024-01-15 09:22:14 306觀看
導讀最近在公司寫微信小程序,該小程序主要展示一些高清圖片,所以圖片數量非常多,而且圖片尺寸也比較大,導致小程序的加載時間非常長。所以這里記錄一下如何減少小程序圖片的加載時間。優化前這里我挑選了一些項目里面比較大的

最近在公司寫微信小程序,該小程序主要展示一些高清圖片,所以圖片數量非常多,而且圖片尺寸也比較大,導致小程序的加載時間非常長。所以這里記錄一下如何減少小程序圖片的加載時間。Z8W28資訊網——每日最新資訊28at.com

優化前

這里我挑選了一些項目里面比較大的圖片,還有我之前保存的一些背景圖,共計12張,上傳到阿里云oss,然后寫了一個demo去渲染圖片,這里我們先看看加載時間。Z8W28資訊網——每日最新資訊28at.com

圖片Z8W28資訊網——每日最新資訊28at.com

可以看到,一旦文件大小到了1M以上,加載基本都在1秒以上了,而且加載最慢的一張圖片大小為2.4M;加載耗時5.27秒。然而在這個小程序中,有非常多的瀑布流圖片展示,需要加載的圖片也非常多,這對于這種圖片展示類的小程序來說,簡直是非常糟糕的體驗。下面我們就分析一下,如何提升用戶體驗,縮短加載時間。Z8W28資訊網——每日最新資訊28at.com

分析優化

這里我總結了一些常見圖片優化策略,方法如下:Z8W28資訊網——每日最新資訊28at.com

圖片圖片Z8W28資訊網——每日最新資訊28at.com

下面我們就根據總結的優化策略進行優化,具體如下:Z8W28資訊網——每日最新資訊28at.com

優化1:使用webp格式的圖片

首先我們知道,在小程序中是支持webp格式的圖片的,所以我們可以將圖片轉換為webp格式,這樣可以減少圖片體積,提升加載速度。 公司使用的阿里云oss進行圖片存儲,阿里云oss是支持格式轉換的,只需要在圖片url后面加一定的參數即可,我們可以給圖片后面加上?x-oss-process=image/format,webp即可。Z8W28資訊網——每日最新資訊28at.com

// 原本圖片路徑:let url =' https://lonjin.oss-cn-beijing.aliyuncs.com/weixin-test/3%20%282%2917047050403470042.png'// 轉化為webp格式的圖片路徑:let url =' https://lonjin.oss-cn-beijing.aliyuncs.com/weixin-test/3%20%282%2917047050403470042.png?x-oss-process=image/format,webp'

清除緩存,刷新頁面,再來看加載時間:Z8W28資訊網——每日最新資訊28at.com

圖片圖片Z8W28資訊網——每日最新資訊28at.com

可以看到,加載時間大幅縮短,圖片格式轉化后,圖片大小已經非常小了,最大的一張圖片僅僅有730kb;隨之加載時間也大幅縮短,最慢的一張圖片從之前的5.27秒縮短為1.71秒,加載速度提升了3倍!其他的圖片加載基本都在500ms左右,加載速度提升也是比較明顯。Z8W28資訊網——每日最新資訊28at.com

這里我們還需要注意一下webp圖片格式的支持范圍,我這里使用的uni-app做為demo,查了一下文檔,支持范圍如下:Z8W28資訊網——每日最新資訊28at.com

Android4以上(含)、iOS14以上(含)系統內置支持webp,此時,不管web、小程序、app,也不管vue/nvue/uvue都可以直接使用webp; iOS14以下,app-vue下,iOS不支持;app-nvue/uvue下,iOS支持;微信小程序2.9.0起,配置屬性webp為true時iOS支持;Z8W28資訊網——每日最新資訊28at.com

所以如果考慮一些特殊情況,我們可以進行一些特殊情況下的處理。Z8W28資訊網——每日最新資訊28at.com

如果文件是直接放在服務器上的,我們可以借助一些第三方工具來把圖片批量轉化為webp格式;比如convertio.coZ8W28資訊網——每日最新資訊28at.com

優化2:根據需求設置適當的分辨率

阿里云oss支持在圖片后面加上參數來設置圖片的分辨率,我這里寫的demo中,image標簽圖片寬度均為小程序圖片默認寬度;即為width: 320px;,所以我們可以給圖片url后面加上/resize,w_320即可,其中w_320表示圖片寬度為320px。Z8W28資訊網——每日最新資訊28at.com

// 原本圖片路徑:let url =' https://lonjin.oss-cn-beijing.aliyuncs.com/weixin-test/3%20%282%2917047050403470042.png?x-oss-process=image/format,webp'// 設置寬度后的圖片路徑:let url =' https://lonjin.oss-cn-beijing.aliyuncs.com/weixin-test/3%20%282%2917047050403470042.png?x-oss-process=image/format,webp/resize,w_320'

清除緩存,刷新頁面,再來看加載時間:Z8W28資訊網——每日最新資訊28at.com

圖片圖片Z8W28資訊網——每日最新資訊28at.com

圖片大小大幅度減少,最大的一張圖片僅僅有15.4 kB;隨之加載時間也大幅縮短,最慢的一張圖片從之前的1.71秒縮短為316毫秒,加載速度提升了5倍!這時候所有圖片的加載速度全部沒有超過1秒,最大不超過350ms;基本上算是質的飛躍了。不過需要注意的是,圖片分辨率還是需要結合業務需求進行調整的,如果要求必須高清,不建議設置太小的分辨率。不過我們可以寫一個檢測用戶網絡狀態的方法,在不同的網絡環境下加載不同分辨率的圖片;后面我會專門來寫一篇文章來實現這個功能。Z8W28資訊網——每日最新資訊28at.com

優化3:使用雪碧圖

雪碧圖,也叫Sprite,是將多個小圖片合并成一張大圖,然后在頁面中使用background-image和background-position屬性來顯示其中的某一張圖片。這樣可以減少圖片的加載次數,減少圖片的大小,同時減少圖片的加載時間。在項目中難免會有很多小圖標,我們就可以使用雪碧圖的方式來使用,減少請求次數。這里我就不做展示了。Z8W28資訊網——每日最新資訊28at.com

優化4:合理使用占位圖片

通常情況下,為了內容的動態展示,需要通過網絡請求從接口中獲取圖片的url。如果在網絡慢的情況下,image加載圖片的過程可能會非常慢,在請求完成之前頁面都會因為沒有數據而呈現一片空白,這是非常差的用戶體驗,這里我們可以借助小程序image標簽上的@error 和@load事件來實現占位圖片的展示。我們可以根據需求去封裝一個LoadImage組件統一處理,上面提到的優化1、優化2也可以通過定義參數實現批量添加,同時我們也可以給組件加上lazyLoad,減輕小程序加載壓力。Z8W28資訊網——每日最新資訊28at.com

組件具體代碼如下:Z8W28資訊網——每日最新資訊28at.com

<template>    <view class="loadImage-wrapper">        <image v-if="isLoading" :src="defaultImage" :mode="mode" :lazy-load="lazyLoad" />        <image :class="[isLoading ? 'before-load' : '']" :src="imageUrl" :mode="mode" :lazy-load="lazyLoad"            @load="imageLoad" />    </view></template><script>export default {    props: {        /**         * 占位圖         * @default /static/images/load-image.png         */        defaultImage: {            type: String,            default: '/static/load-image.png',        },        /**         * 是否使用webp         * @default false         */        useWebp: {            type: Boolean,            default: false,        },        /**         * 圖片的顯示模式         * @default scaleToFill         */        mode: {            type: String,            default: 'scaleToFill',        },        /**         * 圖片加載分辨率-寬度         * @default         */        width: {            type: String,            default: '',        },        /**         * 是否懶加載         * @default true         */        lazyLoad: {            type: Boolean,            default: true,        },        /**         * 圖片地址         * @default         */        src: {            type: String,            default: '',        },    },    data() {        return {            isLoading: true,        }    },    methods: {        imageLoad() {            this.isLoading = false        },    },    computed: {        imageUrl() {            let url = this.src + '?'            this.useWebp && (url += 'x-oss-process=image/format,webp')            this.width && (url += '/resize,w_' + this.width)            return url        }    },}</script><style lang="scss" scoped>.loadImage-wrapper {    .before-load {        width: 0;        height: 0;        opacity: 0;    }}</style>

使用方式如下:Z8W28資訊網——每日最新資訊28at.com

<template>    <view class="list">        <load-image v-for="(item, index) in list" :src="item" :lazyLoad="false" useWebp :width="320" :key="index" />    </view></template>

優化后效果對比

我們再來看一下優化前后的加載時間對比:Z8W28資訊網——每日最新資訊28at.com

  • 優化前:

圖片圖片Z8W28資訊網——每日最新資訊28at.com

  • 優化后:

圖片圖片Z8W28資訊網——每日最新資訊28at.com

我們用一張圖片來做對比:Z8W28資訊網——每日最新資訊28at.com


Z8W28資訊網——每日最新資訊28at.com

圖片名稱Z8W28資訊網——每日最新資訊28at.com

大小Z8W28資訊網——每日最新資訊28at.com


Z8W28資訊網——每日最新資訊28at.com

加載時間Z8W28資訊網——每日最新資訊28at.com

優化前Z8W28資訊網——每日最新資訊28at.com

wallhaven-we3z86.jpegZ8W28資訊網——每日最新資訊28at.com

2.4MBZ8W28資訊網——每日最新資訊28at.com

5.27sZ8W28資訊網——每日最新資訊28at.com

優化后Z8W28資訊網——每日最新資訊28at.com

wallhaven-we3z86.jpegZ8W28資訊網——每日最新資訊28at.com

15.3KBZ8W28資訊網——每日最新資訊28at.com

23msZ8W28資訊網——每日最新資訊28at.com

可以看到相對體積而言,縮小了99.4%;相對加載時間,縮短了5.25秒,在幾乎不影響圖片質量的情況下,極大的提升了用戶體驗。Z8W28資訊網——每日最新資訊28at.com

本文鏈接:http://m.www897cc.com/showinfo-26-61000-0.html5.25秒變0.023秒:小程序圖片優化全攻略

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 面試官問:synchronized為什么是重量級鎖?

下一篇: Windows非分頁緩沖池內存使用率較高的問題

標簽:
  • 熱門焦點
Top 日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不
国产亚洲欧洲| 性做久久久久久久久| 国产在线拍揄自揄视频不卡99 | 国产精品影院在线观看| 国产精品久久久亚洲一区| 国产亚洲欧美aaaa| 亚洲国产精品一区二区尤物区| 欧美国产免费| 国产精品第一页第二页第三页| 欧美肥婆在线| 欧美三级在线视频| 国产日韩欧美a| 亚洲韩国日本中文字幕| 亚洲午夜在线| 久久久久国产精品一区二区| 欧美国产日本| 国产精品亚洲综合色区韩国| 在线播放中文一区| 制服丝袜亚洲播放| 久久久久久久一区| 欧美日韩精品免费| 国产视频观看一区| 亚洲精品自在在线观看| 亚洲欧美日韩网| 蜜月aⅴ免费一区二区三区| 国产精品久久久99| 亚洲电影免费在线观看| 亚洲欧美清纯在线制服| 欧美国产免费| 国内精品国产成人| 亚洲性色视频| 欧美激情自拍| 精品91免费| 亚洲欧美日本视频在线观看| 欧美成人在线免费视频| 国产亚洲精品久久久久动| 亚洲乱亚洲高清| 久久久久久**毛片大全| 欧美日韩一区二区视频在线| 1024精品一区二区三区| 欧美一区二区黄| 欧美视频在线观看免费| 亚洲黄色在线观看| 久久aⅴ乱码一区二区三区| 欧美性色aⅴ视频一区日韩精品| 国产精品一二一区| 亚洲毛片在线看| 美女精品在线| 国模精品一区二区三区| 亚洲女女女同性video| 欧美女人交a| 亚洲成人在线视频播放| 欧美中文字幕在线播放| 国产乱码精品一区二区三| 亚洲人成网站在线播| 久久嫩草精品久久久精品| 国产精品午夜春色av| 一级成人国产| 欧美巨乳在线| 亚洲欧洲一区| 免费观看30秒视频久久| 黄色成人91| 久久国产成人| 国产欧美一区二区三区久久| 一区二区三区国产在线观看| 欧美韩日高清| 亚洲黄色精品| 欧美成人一二三| 亚洲国产精品成人综合色在线婷婷| 在线视频亚洲| 欧美日韩国产小视频| 91久久国产综合久久91精品网站| 亚洲视频免费| 欧美日韩另类综合| 99国产精品国产精品毛片| 欧美激情片在线观看| 亚洲激情女人| 欧美福利视频在线观看| 亚洲黄色成人网| 免费亚洲电影在线| 亚洲国产一区二区在线| 女同一区二区| 亚洲卡通欧美制服中文| 欧美伦理91| 99精品欧美一区二区三区| 欧美剧在线观看| 亚洲美女视频网| 欧美日韩国产精品成人| avtt综合网| 国产精品爱啪在线线免费观看| 在线电影国产精品| 老司机免费视频久久| 伊人成人在线视频| 欧美mv日韩mv国产网站| 亚洲精品你懂的| 欧美日韩精品免费观看视频| 9人人澡人人爽人人精品| 欧美性大战久久久久| 亚洲女性裸体视频| 国产亚洲精品aa午夜观看| 久久蜜桃精品| 亚洲精品久久久久久久久| 欧美日韩精品久久| 欧美一级二区| 亚洲成色999久久网站| 欧美精品久久一区二区| 亚洲一区二区欧美| 国产亚洲aⅴaaaaaa毛片| 久久一二三国产| 亚洲精品一品区二品区三品区| 久久久久久亚洲综合影院红桃| 欧美午夜精品| 亚洲欧美一区二区视频| 国内成+人亚洲| 欧美韩日视频| 亚洲一区日本| 国产一区二区久久| 欧美风情在线观看| 亚洲图片欧美一区| 国产欧美日韩亚洲一区二区三区| 亚洲一区二区3| 国产午夜精品久久久久久久| 麻豆精品视频在线观看| 一区二区三区欧美亚洲| 国产欧美日韩综合| 老巨人导航500精品| 妖精视频成人观看www| 国产欧美亚洲精品| 免费在线亚洲| 亚洲一区二区在线播放| 极品少妇一区二区三区| 欧美日韩xxxxx| 欧美在线观看一区| 亚洲精品久久久久久久久| 国产精品视频久久| 免费影视亚洲| 亚洲欧美另类综合偷拍| 在线观看不卡| 国产精品国产三级国产普通话蜜臀 | 久久岛国电影| 亚洲欧洲日韩女同| 国产精品有限公司| 可以看av的网站久久看| 亚洲一二三区精品| 在线观看日韩www视频免费| 欧美视频不卡| 免费看成人av| 欧美一二三视频| 99国产一区二区三精品乱码| 国产一区二区三区在线观看免费| 久久福利影视| 99精品欧美一区二区三区| 国内一区二区在线视频观看| 欧美日韩伦理在线| 久久久av水蜜桃| 亚洲一级在线观看| 亚洲激情影视| 国精产品99永久一区一区| 欧美天天在线| 欧美激情黄色片| 久久视频一区二区| 午夜精品一区二区三区在线播放 | 在线观看国产日韩| 国产精品入口福利| 欧美精品情趣视频| 久久午夜电影网| 性欧美1819sex性高清| 99视频精品免费观看| 在线观看三级视频欧美| 国产欧美一区二区精品婷婷 | 亚洲欧美日韩视频二区| 亚洲精品欧美日韩| 激情欧美一区二区| 国产欧美日本| 国产精品国产三级国产aⅴ入口| 欧美亚洲日本一区| 一区二区三区回区在观看免费视频| 国产精品啊啊啊| 欧美日韩国产一区| 欧美丰满高潮xxxx喷水动漫| 久久婷婷麻豆| 香蕉免费一区二区三区在线观看 | 欧美黄色免费| 免费黄网站欧美| 久久人人97超碰人人澡爱香蕉| 亚洲精品在线二区| 今天的高清视频免费播放成人| 欧美日韩国产综合视频在线观看中文| 亚洲一二三区视频在线观看| 亚洲九九爱视频| 亚洲人成啪啪网站| 亚洲黄色免费电影| 亚洲电影免费在线观看| 伊人男人综合视频网| 精品成人一区| 一区二区在线不卡| 激情小说另类小说亚洲欧美 | 欧美成人午夜激情| 模特精品裸拍一区| 免费观看亚洲视频大全| 久久综合久色欧美综合狠狠| 久久久久久久久久久久久女国产乱| 99视频精品免费观看| 亚洲美洲欧洲综合国产一区|