解决微信sdk之uploadImage上传多张图片时循环提示“上传中”

        搜索本文的其他小伙伴,可能也会搜索类似的关键词,我就先写着,方便遇到相同问题的朋友寻找本文答案:

微信sdk上传图片
uploadImage上传多张图片

        行了,接下来就是快速解决问题的时候了。

        官方文档中,上传图片的接口方法是:

解决微信sdk之uploadImage上传多张图片时循环提示“上传中”_第1张图片
官方文档截图

        看到图中我画的红线没有?这里就是突破口。官方文档只告诉你 isShowProgressTips 默认值为1,代表显示进度提示,但并没有说清楚如何改变样式,或者如何取消进度提示。

        这里可以先跟大家讲,这里但数字“1”不是秒数,不代表进度默认显示多少秒,而是true的意思,原则上讲 isShowProgressTips 的值应该是布尔,所以大家现在就知道,如果不希望有进度提示,那么很简单,就是把值设为零——“0”。(别问我为什么知道,一般都是这样,或者你自己随便尝试都可以知道的)

        接着,你会发现,加上 isShowProgressTips:0 这个属性后,不再弹出“上传中”这个提示框modal了。那么我们如何让他提示呢?

        这里有个可以说是障眼法方法:

1、写一个模太框隐藏,模太框中一张带有loading效果的gif图在页面中央旋转;
2、点击添加图片时,先显示模太框,使用 $('.modal').fadeIn(3000),在选完图片后,需要执行 wx.uploadImage 中的success方法,在success方法的最后,加上一句 $('.modal').fadeOut(300) ,当然,前提是你使用了jquery、zepto这类框架。否则直接加个定时器显示隐藏也可以。

        之所以fadeIn的时间填了3秒,而fadeOut的时间是300毫秒,是因为fadeIn执行的时候,我们并不希望用户看到你在选择图片前,已经有了loading的效果,而在选择图片上传成功后,300毫秒的过度时间,可以让用户感觉这是一个淡出的效果。

        ok啦,本章比较简单,我就不上代码了。欢迎大家关注我或者评论,有需要探讨的地方我会积极回复哦!

你可能感兴趣的:(解决微信sdk之uploadImage上传多张图片时循环提示“上传中”)