【发布时间】:2017-07-08 05:02:45
【问题描述】:
我是 firebase 和 angularjs 的新手,我在从 firebase 存储中获取下载 url 并将它们存储在 firebase 实时数据库中时遇到了困难。
我能够将多个文件上传到 Firebase 存储。问题是当我将下载 url 存储到 firebase 实时数据库中时,所有数据库 url 值都是相同的。它应该根据每个文件的下载 URL 有所不同。
这是我的脚本:
$scope.submitPhotos = function(file){
console.log(file);
var updateAlbum = [];
for (var i = 0; i < file.length; i++) {
var storageRef=firebase.storage().ref(albumtitle).child(file[i].name);
var task=storageRef.put(file[i]);
task.on('state_changed', function progress(snapshot){
var percentage=( snapshot.bytesTransferred / snapshot.totalBytes )*100;
if (percentage==100){
storageRef.getDownloadURL().then(function(url) {
var galleryRef = firebase.database().ref('gallery/'+albumkey);
var postkey = firebase.database().ref('gallery/'+albumkey).push().key;
updateAlbum={img:url};
firebase.database().ref('gallery/'+ albumkey+'/'+postkey).update(updateAlbum);
});
};
})
};
};
如您所见,我能够将 url 存储到数据库中,但所有 url 都是相同的。我需要的是每个密钥存储每个不同的存储链接。
任何帮助表示赞赏。谢谢
【问题讨论】:
标签: angularjs firebase firebase-realtime-database firebase-storage