精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

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

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

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

優化前

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

圖片

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

分析優化

這里我總結了一些常見圖片優化策略,方法如下:

圖片圖片

下面我們就根據總結的優化策略進行優化,具體如下:

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

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

// 原本圖片路徑:
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'

清除緩存,刷新頁面,再來看加載時間:

圖片圖片

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

這里我們還需要注意一下webp圖片格式的支持范圍,我這里使用的uni-app做為demo,查了一下文檔,支持范圍如下:

Android4以上(含)、iOS14以上(含)系統內置支持webp,此時,不管web、小程序、app,也不管vue/nvue/uvue都可以直接使用webp; iOS14以下,app-vue下,iOS不支持;app-nvue/uvue下,iOS支持;微信小程序2.9.0起,配置屬性webp為true時iOS支持;

所以如果考慮一些特殊情況,我們可以進行一些特殊情況下的處理。

如果文件是直接放在服務器上的,我們可以借助一些第三方工具來把圖片批量轉化為webp格式;比如convertio.co

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

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

// 原本圖片路徑:
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'

清除緩存,刷新頁面,再來看加載時間:

圖片圖片

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

優化3:使用雪碧圖

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

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

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

組件具體代碼如下:

<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>

使用方式如下:

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

優化后效果對比

我們再來看一下優化前后的加載時間對比:

  • 優化前:

圖片圖片

  • 優化后:

圖片圖片

我們用一張圖片來做對比:


圖片名稱

大小


加載時間

優化前

wallhaven-we3z86.jpeg

2.4MB

5.27s

優化后

wallhaven-we3z86.jpeg

15.3KB

23ms

可以看到相對體積而言,縮小了99.4%;相對加載時間,縮短了5.25秒,在幾乎不影響圖片質量的情況下,極大的提升了用戶體驗。

責任編輯:武曉燕 來源: 趣談前端
相關推薦

2025-05-08 09:11:41

2015-03-04 13:53:33

MySQL數據庫優化SQL優化

2010-03-03 13:51:54

2009-02-10 09:47:00

應用程序訪問權限

2011-11-17 14:05:47

筆記本常見問題

2024-05-07 09:01:21

Queue 模塊Python線程安全隊列

2013-06-08 11:13:00

Android開發XML解析

2013-04-15 10:48:16

Xcode ARC詳解iOS ARC使用

2010-04-23 14:04:23

Oracle日期操作

2015-08-14 10:27:53

跳槽程序員讀書摘要

2018-03-23 13:29:29

程序員跳槽薪資

2019-06-07 09:33:14

WiFi路由器網絡

2009-08-18 09:21:54

Windows 7效率提高系統優化

2009-10-19 15:20:01

家庭綜合布線

2009-12-14 14:32:38

動態路由配置

2014-03-19 17:22:33

2009-02-20 11:43:22

UNIXfish全攻略

2009-07-17 17:43:49

Jruby開發Web

2009-02-12 10:12:00

NAT配置

2010-08-25 14:36:02

DHCP服務器
點贊
收藏

51CTO技術棧公眾號

91在线公开视频| 9.1成人看片免费版| 日本中文字幕视频在线| 欧美aaa在线| www.亚洲一区| 国产黄色一区二区三区| 91九色porn在线资源| 2023国产精品| 国产精品看片资源| 欧美一区二区三区爽爽爽| 9l视频自拍蝌蚪9l视频成人| 午夜精品久久久久久不卡8050| 蜜桃视频成人| 亚洲一区中文字幕永久在线| 欧美777四色影| 亚洲精品国产精品自产a区红杏吧| 37pao成人国产永久免费视频| 97电影在线看视频| 国产999精品久久久久久绿帽| 国产91精品久| www.97视频| 青青操综合网| 欧美一二三四区在线| 成人免费aaa| 免费大片黄在线| 91免费观看视频| 国产在线一区二区三区| 午夜精品久久久久久久久久久久久蜜桃| 精品国产精品国产偷麻豆| 欧美精品日韩综合在线| www插插插无码视频网站| 成年人在线视频免费观看| 国产麻豆视频一区| 国产脚交av在线一区二区| 久久黄色免费网站| 日韩www.| 亚洲精品一二区| 潘金莲一级淫片aaaaa| 亚洲欧洲自拍| 亚洲图片欧美综合| 日本黑人久久| 亚洲免费一级片| 久草中文综合在线| 欧洲日本亚洲国产区| 青娱乐免费在线视频| 欧美自拍偷拍| 精品一区二区三区电影| 自拍偷拍21p| 蜜臀国产一区| 一区二区视频在线看| 亚洲自拍偷拍二区| 韩日视频在线| 91美女视频网站| 99影视tv| 国产福利小视频| 久久精品国产在热久久| 2019亚洲日韩新视频| 九九热只有精品| 这里只有精品在线| 日韩亚洲一区二区| 少妇高潮在线观看| 蜜桃成人av| 日韩高清欧美高清| 你懂的在线观看网站| 久久精品色综合| 精品久久久三级丝袜| 亚洲综合激情视频| 欧美男男gaygay1069| 亚洲成av人片一区二区梦乃| www.xxx麻豆| 日韩av官网| 一区二区三区在线播| 一区二区日本| 91在线网址| 国产精品久久久久天堂| 亚洲精品日韩成人| 麻豆网站在线看| 综合激情成人伊人| 一区二区在线不卡| 国产成人午夜| 亚洲一区二区三区自拍| 日韩日韩日韩日韩日韩| 蜜桃视频在线观看免费视频| 中文字幕亚洲综合久久菠萝蜜| 亚洲欧洲在线一区| 免费观看久久久久| 一区二区三区在线观看欧美| av网站大全免费| 91福利在线免费| 色婷婷综合五月| 9久久婷婷国产综合精品性色| 少妇精品视频一区二区免费看| 在线视频你懂得一区| 一区二区在线播放视频| 看片一区二区| 欧美成人精品高清在线播放 | 成人高清免费观看mv| 久久久噜噜噜久久中文字幕色伊伊 | 欧美精品一区二区精品网| 星空大象在线观看免费播放| 日韩超碰人人爽人人做人人添| 亚洲欧美国产精品久久久久久久| 亚洲午夜久久久久久久国产| 日韩一区欧美| 91精品91久久久久久| 国产又大又粗又长| 91在线一区二区| 今天免费高清在线观看国语| 成人性生活av| 欧美tickling网站挠脚心| 蜜桃av乱码一区二区三区| 欧美视频一区| 成人免费大片黄在线播放| 亚洲欧洲视频在线观看| 亚洲三级电影网站| 一区二区三区韩国| 久久动漫网址| 欧美激情视频网| 一级aaaa毛片| 久久亚洲欧美国产精品乐播| 国产aaa免费视频| 9999精品| 中文字幕久热精品在线视频 | 亚洲国产一区二区三区a毛片| 国产美女精彩久久| 精彩国产在线| 亚洲va天堂va国产va久| 九九热视频免费| 不卡一区综合视频| 日本久久久久久久久久久| 黄色片一区二区| 一区二区理论电影在线观看| 狠狠操狠狠干视频| 精品视频网站| 国产91免费观看| 日色在线视频| 欧美日韩国产中文精品字幕自在自线| 中文字幕乱妇无码av在线| 久久精品国产www456c0m| 日本不卡免费高清视频| 婷婷亚洲一区二区三区| 亚洲图片欧美综合| 丰满岳乱妇一区二区| 欧美大片一区| 91视频婷婷| 黄色在线免费网站| 欧美另类一区二区三区| 三上悠亚作品在线观看| 国产原创一区二区| 国产免费xxx| 久久av偷拍| 欧美日本中文字幕| 精品乱子伦一区二区| 一区二区在线看| 久久人妻少妇嫩草av蜜桃| 亚洲无线视频| 国产精品二区二区三区| 91破解版在线观看| 亚洲精品国产suv| 久久久久久久黄色片| 久久综合网色—综合色88| 免费在线观看亚洲视频 | 一本一本久久a久久精品综合妖精| 成人软件在线观看| 中文字幕亚洲第一| 中文字幕在线视频第一页| 成人免费在线视频| 亚洲妇女无套内射精| 亚洲国产黄色| 欧美日韩综合精品| 欧美黄页在线免费观看| 欧美高清视频免费观看| 婷婷五月综合激情| 在线免费不卡视频| 波多野结衣在线网址| 国产成人精品三级| 91好吊色国产欧美日韩在线| 欧洲grand老妇人| 91国产丝袜在线放| 美女在线视频免费| 色一区av在线| 国产成人精品免费看视频| 亚洲成人午夜影院| 日本污视频网站| 国产一区二区三区四区五区入口| 91精品国产91久久久久麻豆 主演| 天堂综合网久久| 国产在线观看精品一区二区三区| 日韩av官网| 一本大道亚洲视频| 亚洲第一大网站| 在线中文字幕一区| 久久久久亚洲av片无码下载蜜桃| 久久丝袜美腿综合| 亚洲欧美日韩一二三区| 免费在线日韩av| mm131午夜| 九九热线有精品视频99| 91黄色精品| 3d性欧美动漫精品xxxx软件| 久久久999精品视频| 天堂av电影在线观看| 欧美另类一区二区三区| www.国产毛片| 亚洲午夜一二三区视频| 精品人体无码一区二区三区| eeuss国产一区二区三区| 国产成年人视频网站| 国产日韩一区| 日韩a级黄色片| 成人在线电影在线观看视频| 国产日韩精品推荐| 日韩欧国产精品一区综合无码| 97视频免费观看| 在线观看小视频| 一区二区三区四区在线观看视频| 女人18毛片水真多18精品| 欧美高清hd18日本| 日韩免费av网站| 午夜免费久久看| 久草视频免费播放| 亚洲少妇30p| 正在播放国产对白害羞| 久久综合久久综合久久| 亚洲中文字幕无码一区| 国产美女娇喘av呻吟久久| 国产又大又黄又粗又爽| 亚洲一区二区免费看| 精品一区二区三区无码视频| 国产精品99久久精品| 日韩精品极品视频在线观看免费| 久久动漫网址| 精品免费二区三区三区高中清不卡| 亚洲热av色在线播放| 国产精品青草久久久久福利99| 天堂av在线网| 97久久伊人激情网| missav|免费高清av在线看| 欧美精品在线观看91| 久操免费在线| 日韩在线视频免费观看| 97超碰国产一区二区三区| 中文国产亚洲喷潮| 福利视频在线播放| 一区二区三区精品99久久 | 国产欧美熟妇另类久久久| 欧美三级日韩三级国产三级| 中文字幕免费视频观看| 色天天综合色天天久久| 亚洲av无码精品一区二区| 色综合久久99| 在线观看日韩一区二区| 欧美精品一二三| 国产白浆在线观看| 精品蜜桃在线看| 蜜桃久久一区二区三区| 亚洲国产婷婷香蕉久久久久久| 殴美一级特黄aaaaaa| 亚洲精品成人av| 日韩av成人| 国产小视频91| 欧美日韩欧美| 色综合久久88| 久草在线资源站手机版| 日韩暖暖在线视频| 四虎影视国产精品| 99理论电影网| 欧美丝袜美腿| 色乱码一区二区三在线看| 99精品美女| 日本wwwcom| 视频一区在线播放| 超碰av在线免费观看| 韩国一区二区三区| 人妻 日韩 欧美 综合 制服| 91麻豆成人久久精品二区三区| 亚洲第一综合网| 亚洲欧美日韩国产手机在线| 日本一区二区欧美| 在线观看视频欧美| 国内精品久久久久久久久久| 日韩成人在线电影网| aaa在线免费观看| 色综合91久久精品中文字幕| 美女日韩欧美| 1卡2卡3卡精品视频| 日韩在线影视| 中国成人在线视频| 国产偷自视频区视频一区二区| 欧美自拍小视频| 成人一道本在线| 中文字幕在线观看免费高清| 一区二区三区精品视频| 天堂网视频在线| 日韩色在线观看| 国产剧情在线观看| 久久久伊人欧美| 国产一区高清| 麻豆av一区二区三区| 亚洲国产精品成人| 成人观看免费完整观看| 国产成人亚洲精品狼色在线| 国产激情在线免费观看| 亚洲综合清纯丝袜自拍| 真实新婚偷拍xxxxx| 亚洲激情视频在线| caopeng在线| 国产精品第1页| 卡通动漫国产精品| 久久久无码中文字幕久...| 日日夜夜免费精品| 国产精品久久不卡| 一区二区三区在线观看国产 | 久久成人羞羞网站| 精品无码在线视频| 亚洲成人激情自拍| 国产夫妻性生活视频| 日韩一区二区三区xxxx| 日本欧美韩国| 久久精品人成| 亚洲人成高清| 在线中文字日产幕| 亚洲免费观看高清在线观看| 人妻中文字幕一区二区三区| 国产丝袜精品视频| 成人黄色动漫| 国产精品毛片一区视频| 国产精品国产三级国产在线观看 | 成人h动漫精品一区二| 日韩av手机在线免费观看| 欧美午夜在线观看| 国产高清视频在线观看| 2020久久国产精品| 亚洲bt欧美bt精品777| 国产真人做爰毛片视频直播| 国产不卡视频在线播放| 福利所第一导航| 欧美一区二区在线免费观看| 日本高清中文字幕在线| 国产精品视频在线观看| 国产一区二区三区四区大秀| 红桃av在线播放| 91亚洲午夜精品久久久久久| 国产精品黄色网| 日韩电影在线观看中文字幕| 鲁鲁在线中文| 久久99精品国产99久久| 午夜一级久久| 9.1成人看片免费版| 91福利在线免费观看| 91在线品视觉盛宴免费| 国产精品夜间视频香蕉| 天天射成人网| 亚洲丝袜在线观看| 亚洲国产精品一区二区久久恐怖片| 亚洲精品第五页| 91精品国产成人| 国产在视频线精品视频www666| 黄色一级二级三级| 中文字幕在线观看不卡| 国产夫绿帽单男3p精品视频| 韩国视频理论视频久久| 色婷婷精品视频| 99视频在线免费| 国产精品麻豆久久久| 国产ts变态重口人妖hd| 91av在线网站| 日本欧美国产| 中文字幕一二三| 欧美午夜影院在线视频| aiai在线| 国产成人成网站在线播放青青 | 国产91在线播放九色快色| 久久国产电影| 亚洲熟女一区二区三区| 一本到高清视频免费精品| 麻豆网站在线免费观看| 国产区一区二区三区| 青青草原综合久久大伊人精品优势 | 亚洲少妇30p| 天天综合在线视频| 国产精品热视频| 国产精品99一区二区| 精品人妻一区二区三区香蕉| 欧美日韩一区二区三区不卡| 欧美大片黄色| 欧美日韩在线播放一区二区| 国模一区二区三区白浆| 午夜影院在线看| 日韩在线观看免费全| 人人精品视频| 欧美视频亚洲图片| 色婷婷狠狠综合| 丝袜中文在线| 亚洲欧美日韩精品综合在线观看| 国产99久久久国产精品免费看| 无码人妻精品一区二区三区9厂 | 日韩黄色av网站| 在线免费成人| 久久精品网站视频|