当前位置:  开发笔记 > 编程语言 > 正文

微信小程序在上传图片时如何限制大小(附代码)

 本篇文章给大家带来的内容是关于微信小程序在上传图片时如何限制大小,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
本篇文章给大家带来的内容是关于微信小程序在上传图片时如何限制大小(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

最近有一个微信小程序的项目,要求是上传多张图片,数量不能超过3张 ,而且在php里因为上传图片被设置了只能上传2M,导致上传不成功,所以我在前端 设置一个函数,用了微信api(wx.chooseImage)获取图片,如果图片大于3张的情况弹出一个提示,不能继续上传图片了,如果图片大于2M的情况弹出一个提示,只能在上传2M以下的图片,

data:{
    img:[], //设置一个数组
}

add_img:function(){
    var that = this,
    img = that.data.img;
        if(img.length < 3){  //如果图片数量小于3张,可以直接获取图片
            wx.chooseImage({
                count:1,     //默认9
                sizeType:['compressed'], //可以指定原图还是压缩图,默认二者都有
                sourceType:['album','camera'],//可以指定来源相册还是相机,默认二者都有
                success:function(res){
                    var tempFilesSize = res.tempFiles[0].size;  //获取图片的大小,单位B
                    if(tempFilesSize <= 2000000){   //图片小于或者等于2M时 可以执行获取图片
                        var tempFilePaths = res.tempFilePaths[0]; //获取图片
                        that.data.img.push(tempFilePaths);   //添加到数组
                        that.setData({
                            img:that.data.img
                        })
                    }else{    //图片大于2M,弹出一个提示框
                        wx.showToast({
                            title:'上传图片不能大于2M!',  //标题
                            icon:'none'       //图标 none不使用图标,详情看官方文档
                        })
                    }
                }
            })
        }else{  //大于三张时直接弹出一个提示框
             wx.showToast({
                 title:'上传图片不能大于3张!',
                 icon:'none'   
             })

        }

}

我用的是tempFiles里的size判断图片大小, 支持最低版本1.2.0

推荐阅读
oDavid_仔o_880
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有