我有函数来获取图像像
dynamic imgBinary = _repository.fetchImage(productId);
我想加入到图片的这个名单
List<NetworkImage> listImages = new List<NetworkImage>();
因此,像
dynamic imgBinary = _repository.fetchImage(productId);
listImages.add(imgBinary);
怎么投呢?
我有函数来获取图像像
dynamic imgBinary = _repository.fetchImage(productId);
我想加入到图片的这个名单
List<NetworkImage> listImages = new List<NetworkImage>();
因此,像
dynamic imgBinary = _repository.fetchImage(productId);
listImages.add(imgBinary);
怎么投呢?
好了,你可以试试.then
方法。
如_repository.fetchImage(productId);
是未来。
所以你可以尝试 -
List<NetworkImage> listImages = List<NetworkImage>();
Future<dynamic> imgBinary = _repository.fetchImage(productId);
imgBinary.then((i){
listImages.add(i);
});
要么
直:
_repository.fetchImage(productId).then((i){
listImages.add(i);});
从未来获得价值 - 我们可以使用:
async and await
或者您可以使用then()
方法来注册一个回调。 当未来完成这个回调火灾。
欲了解更多信息
编辑:anmol.majhail的答案是更好
你fetchImage方法需要返回未来,这里的一些伪代码为指导做好
List<NetworkImage> listImages = new List<NetworkImage>();
Future<void> _fetchAddImageToList(int productId) async {
//trycatch
dynamic imgBinary = await _repository.fetchImage(productId);
listImages.add(imgBinary);
}
Future<NetworkImage> fetchImage(int id) async {
New NetworkImage img = new NetworkImage();
//do your fetch work here
return img;
}