我正在使用Firebase Storage。在存储桶中,我有几个图像文件和一个带有所有文件列表的listfile.txt。
我需要做的就是加载图像,并按照与listfile.txt
中列出的文件相同的顺序将它们放入数组。
我遇到了问题,因为getDownloadURL()是异步的,并且图像以随机顺序加载到overlay
数组中。
var files=[];
var mapRef=[];
var overlay=[];
var listMapsRef = storageRef.child(prefix+"/listfile.txt");
listMapsRef.getDownloadURL().then(function(url) {
$.get(url, function(txt){
files = txt.split("\n");
for (var i = 0; i < files.length; i++) {
mapRef.push(storageRef.child(files[i]));
.....
.....
}
count = mapRef.length;
mapRef.forEach(function(oneMap) {
oneMap.getDownloadURL().then(function(url){
ovl=loadImage(url);
overlay.push(ovl);
if (!--count) {
startMyApp();
}
});
});
}); //.get
}); //.then
答案 0 :(得分:0)
做类似这样的伪代码
View