你好,我正在一个项目中,将图像存储在firebase中,然后获取每个图像的url并将其存储在数据库(firebase)中,我无法将这些url存储在同一注册表中,这个问题想知道如果我可以使用从多个输入文件上传的图像的URL创建一个数组,并以此方式将它们保存在单个记录中。
parques:{
nombre: "xxxxx",
imgs:[
"urls"
]
}
我在这里留下代码:
var files = document.getElementById('file');
var fullDirectory= 'imgs';
var btnDatos= $('#btn-datos');
var btnImgs = $('#btn-imgs');
//proceso imgs
files.addEventListener('change', function(e){
for (var i = 0; i < e.target.files.length; i++) {
var imageFile = e.target.files[i];
Imagencollage(imageFile);
}
})
//subir imagenes
function Imagencollage(imageFile){
var links= [];
btnImgs.click(function (){
var storageRef = firebase.storage().ref(fullDirectory+"/"+imageFile.name);
var task = storageRef.put(imageFile);
var name = imageFile.name;
task.on('state_changed', function(snapshot){
//??
}, function(error) {
alert('no se subio el archivo');
}, function() {
task.snapshot.ref.getDownloadURL().then(function(downloadURL) {
links.push(downloadURL);
direccionImg(name, links);
});
});
})
}
//subir datos
function direccionImg(name, links){
btnDatos.click(function(){
var db= firebase.database().ref('parques/');
var parque= $('#datos').val();
var data= {
nombre: parque,
imgs: links
}
db.push().set(data)
})
}
在您面前,谢谢您的帮助