Les interfaces des applets WeChat sont toutes asynchrones, si vous utilisez une boucle for
var arr = [];
for(var i = 0;i<5;i++){
wx.request({
url: '',
header: {
'content-type': 'application/json', // 默认值
"Authorization": 'Bearer ' + wx.getStorageSync('token'),
},
success(resp) {
arr.push(resp.data)
}
})
}
setTimeout(function(){
console.log(arr);
},1000)
Il n'est pas facile d'utiliser des minuteries pour contrôler le temps requis pour les demandes d'interface, et cette méthode est trop peu disponible dans les opérations réelles.
Peut être remplacé par récursivité
getammeternumber:function(res,i,length){
var that = this;
var ammeterInfo = that.data.ammeterInfo;
wx.request({
url: '',
header: {
'content-type': 'application/json', // 默认值
"Authorization": 'Bearer ' + wx.getStorageSync('token'),
},
success(resp) {
ammeterInfo.push(resp.data);
that.setData({
ammeterInfo: ammeterInfo
})
if (++i< length) {
that.getammeternumber(res, i, length);
}else{
wx.hideLoading();
}
}
})
},
transfert:
that.getammeternumber (res, 0, res.data.length);