日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

ReactJS antd 环境中项目上传图片后压缩(lrz的使用)

發(fā)布時(shí)間:2024/8/26 综合教程 37 生活家
生活随笔 收集整理的這篇文章主要介紹了 ReactJS antd 环境中项目上传图片后压缩(lrz的使用) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

lrz說明 ( github地址 :https://github.com/think2011/localResizeIMG )

用于:在客戶端壓縮好要上傳的圖片可以節(jié)省帶寬更快的發(fā)送給后端,特別適合在移動(dòng)設(shè)備上使用。

解決了很多問題:

圖片扭曲、某些設(shè)備不自動(dòng)旋轉(zhuǎn)圖片方向,沒有jpeg壓縮算法..
不支持new Blob,formData構(gòu)造的文件size為0..
還有某些機(jī)型和瀏覽器(例如QQX5瀏覽器)莫名其妙的BUG..

按需加載(會(huì)根據(jù)對(duì)應(yīng)設(shè)備自動(dòng)異步載入JS文件,節(jié)省不必要帶寬)

原生JS編寫,不依賴?yán)鏹query等第三方庫,支持AMD or CMD規(guī)范。

基本格式

lrz(file, [options]);

解釋:

file: 通過 input:file 得到的文件,或者直接傳入圖片路徑。

[options] :這個(gè)參數(shù)允許忽略。
    width {Number} 圖片最大不超過的寬度,默認(rèn)為原圖寬度,高度不設(shè)時(shí)會(huì)適應(yīng)寬度;
    height {Number} 同上;
    quality {Number} 圖片壓縮質(zhì)量,取值 0 - 1,默認(rèn)為0.7;
    fieldName {String} 后端接收的字段名,默認(rèn):file;

返回結(jié)果是一個(gè)promise對(duì)象,有then()、catch()、always三個(gè)方法。

用法:(在react中,配合antd-mobile的ImagePicker 圖片選擇器使用lrz壓縮圖片,壓縮后的圖片是base64格式)

1、在項(xiàng)目中安裝lrz

npm install lrz 

2、在js文件中import lrz

import lrz from 'lrz';

3、項(xiàng)目中具體使用部分代碼

onImageChange01 = (files01, type, index) => {
        console.log(files01, type, index);
        if(type==='add'){
            lrz(files01[0].url, {quality:0.1})
                .then((rst)=>{
                    // 處理成功會(huì)執(zhí)行
                    console.log('壓縮成功')
                    console.log(rst.base64);
                    this.setState({
                        imagesrc01:rst.base64.split(',')[1],
                    })
                })
        }else{
            this.setState({imagesrc01:''})
        }
        this.setState({
            files01,
        });
    }
 <div className="ImageFlex">
     <div className="ImageTitle"> 身份證正面照片:</div>
     <p className="ImageTip"> 支持jpg,png,gif,bmp,psd,tiff等圖片格式</p>
     <ImagePicker
        files={files01}
        onChange={this.onImageChange01}
        onImageClick={(index, fs) => console.log(index, fs)}
        selectable={files01.length < 1}
        multiple={this.state.multiple}
    />
 </div>

返回?cái)?shù)據(jù)

1. base64 : 是壓縮過后base64圖片 , 可直接用于 img.src = rst.base64;

2. base64Len : 是生成后的base64的大小,后端可以通過此值來校驗(yàn)是否傳輸完整 (如果采用base64上傳方式);

3. file 壓縮后的file對(duì)象,需要注意的是如果壓縮率太低的話,這個(gè)會(huì)是原始的file對(duì)象;

4. fileLen 生成后的圖片的大小,后端可以通過此值來校驗(yàn)是否傳輸完整;

5. origin 也就是原始的file對(duì)象,里面存了一些原始文件的信息,例如大小,日期等;

文章來自:https://blog.csdn.net/wu_shuxuan/article/details/78902772

總結(jié)

以上是生活随笔為你收集整理的ReactJS antd 环境中项目上传图片后压缩(lrz的使用)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 美女被c出白浆 | 68日本xxxxxⅹxxx22| 四虎影院永久地址 | 久久久久久影视 | 午夜久久网站 | 日韩人妻无码一区二区三区 | 亚洲av无码久久精品狠狠爱浪潮 | jzzjzz日本丰满少妇 | 日大逼| 六十路息与子猛烈交尾 | 欧美亚洲天堂网 | 欧美日韩欧美 | 午夜精品福利一区二区三区蜜桃 | 国产无遮挡又黄又爽又色视频 | 亚洲91在线 | 色五五月| 久久一区 | 朴银狐电影中文在线看 | 青青草国产在线观看 | 免费大片黄在线观看视频网站 | 亚洲欧洲日韩国产 | 欧美日韩成人在线观看 | 欧美精品做受xxx性少妇 | 国产精品久久久久永久免费看 | 成年人在线观看视频网站 | 亚洲高清视频在线 | 成人www | jizz视频在线观看 | 一级淫片免费看 | 国产三级观看 | 亚洲伊人av | 青青艹在线观看 | 毛片视频网站在线观看 | 黄a免费网络 | 三级黄毛片 | 免费黄色在线网站 | 成年人免费看的视频 | 68日本xxxxxⅹxxx22 | 亚洲av少妇一区二区在线观看 | a级片免费在线观看 | 伊人久久精品视频 | 日本a在线观看 | 日本色网址 | 国产suv精品一区二区 | 久久桃花网 | 日本免费毛片 | 国产精品美女主播 | 精品国产av色一区二区深夜久久 | 越南毛茸茸的少妇 | 免费av网站大全 | 高清av免费 | h无码动漫在线观看 | 九色在线观看 | 午夜免费福利小视频 | 国产精品乱码久久久 | 亲嘴扒胸摸屁股免费视频日本网站 | 日日噜噜噜夜夜爽爽狠狠视频97 | 超碰免费成人 | 久色亚洲 | 日韩 欧美 | 亚洲综合五月天婷婷丁香 | 91原创视频在线观看 | 亚洲国产日韩一区无码精品久久久 | 精品成人久久 | 国产高清精品一区二区三区 | 黄网页在线观看 | 久久久久人妻精品一区二区三区 | 日本中文字幕在线观看 | 久久9精品区-无套内射无码 | 色天天综合网 | 色多多在线看 | 亚洲av成人无码一区二区三区在线观看 | 三级网站视频 | 日韩美女网站 | 欧美aaa在线观看 | 97人妻精品一区二区三区动漫 | 男女超爽视频免费播放 | 亚洲视频色图 | 国产精品99久久久 | 亚洲欧美偷拍视频 | 国产黄色免费看 | 看黄色网址 | 精彩视频一区二区三区 | 国产欧美激情 | 日本精品一区二区三区在线观看 | 最新av免费观看 | 九九三级 | 自拍超碰在线 | 性视频在线 | 男女日批 | 东京热一本视频一区 | 精品国产一区二区三区av性色 | 中文字幕第66页 | 男女黄床上色视频 | www国产精品内射老熟女 | 久久久在线视频 | 网站av在线 | 午夜电影网一区 | 免费在线观看一区 |