微信给出的接口,选择图片和上传图片,分开绑定按钮,先点击选择图片按钮,然后点击上传图片按钮。
我们希望简化操作,嵌套这两个接口,使得一键,选择完图片之后返回即开始上传图片。
function up_onepic() {
wx.chooseImage({
success:
wx.chooseImage({
success: function (res) {
upavatar.localId = res.localIds;
if(res.localIds.length == 1) {
//alert('上传图片')
wx.uploadImage({
localId: upavatar.localId[0],
isShowProgressTips: 1,
success: function (res) {
upavatar.serverId.push(res.serverId);
var sI = upavatar.serverId;
fail: function (res) {
alert(JSON.stringify(res));
}
});
}
}
});
}
出现的问题是:选择图片的接口执行完之后,并不执行wx.uploadImage;如果在wx.uploadImage前面加上 alert(‘上传图片’); 语句,操作时确定之后会执行wx.uploadImage。
后来在微信JSSDK说明文档常见错误和解决办法找到解决方式:
uploadImage在chooseImage的回调中有时候Android会不执行,Android6.2会解决此问题,目前可以把调用uploadImage放在setTimeout中延迟100ms解决