vue lrz图片压缩插件

vue lrz图片压缩插件

安装

npm i lrz -S

引入

// main.js 中引入
import lrz from 'lrz'  

使用

methods: {
	afterRead(file) {// 选中上传图片时触发
		let that = this;
		lrz(file.file).then(rst => {
			let base64 = this.dataURLtoFile(rst.base64, file.file.name);
            let params = new FormData();
            params.append('file', base64);
            that.axios.post(url, params).then(function (re) {
            	console.log(re);
            })
		})
	},
	dataURLtoFile(dataurl, filename) { // 将base64转换为file文件
		// 参数dataurl base64字符串
		// 参数filename	图片名称
        let arr = dataurl.split(',')
        let mime = arr[0].match(/:(.*?);/)[1]
        let bstr = atob(arr[1])
        let n = bstr.length
        let u8arr = new Uint8Array(n)
        while (n--) {
            u8arr[n] = bstr.charCodeAt(n)
        }
        return new File([u8arr], filename, {
            type: mime
        })
    }
}

参考网站

官网:https://www.npmjs.com/package/lrz

参数文档:https://github.com/think2011/localResizeIMG/wiki/2.-%E5%8F%82%E6%95%B0%E6%96%87%E6%A1%A3

发布了18 篇原创文章 · 获赞 26 · 访问量 3647

猜你喜欢

转载自blog.csdn.net/qq_40847060/article/details/103558053