为了账号安全,请及时绑定邮箱和手机立即绑定

老师,用promisearr方法上图片,photoid作为一个数组存图片的fileid,那如果想要在手机上查看图片该怎么办

老师,用promisearr方法上图片,photoid作为一个数组存图片的fileid,那如果想要在手机上查看图片该怎么办?

先定义一个images[]数组,查询的结果用setdata方法赋值给images行不通。

使用一个for循环

for(var i=0;i<res.data.length;i++)

{

this.setData({

images:res.data[i].photoid

})

} setdata会把之前的数据覆盖掉,结果只能显示一次上传的图片。

使用两个for循环

for(var i=0;i<res.data.length;i++)

{

for(var j=0;j<res.data[i].photoid.length;j++)

 {

 var m = res.data[i].photoid;

 this.data.images = this.data.images.concat(res.data[i].photoid);

}

}       images的元素能在控制台打印出来,但wxml不显示图片。

请问老师有解决方法吗?


正在回答

1 回答

这个指的是什么方法?

http://img1.sycdn.imooc.com//5ea2fbf40001eec610170201.jpg

想说的是Promise.all()吗?应该是吧。


http://img1.sycdn.imooc.com//5ea2fcd700011cea04800160.jpg

你这里images每次只存一个值,肯定会把前面的覆盖掉,而且setData()赋值是异步的,不应该这样写。

可以定义一个数组,for循环中把id都push到这个数组中,等循环完成以后,把这个数组setData()

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

老师,用promisearr方法上图片,photoid作为一个数组存图片的fileid,那如果想要在手机上查看图片该怎么办

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信