如何在视图中可视化表中Firebase的文件存储内容?

问题描述 投票:1回答:1

我想在数据表中表示Firebase存储的downloadUrl,我们可以在其中查看文件并下载到计算机。

目前,我已经成功获取了所有文件和链接,但是如何在用户可以单击的表中获取此链接。

获得所有firebase存储的功能:

showFileUrl(){

   storageRef.child('UploadedFiles/').listAll().then(function(res) {
      res.items.forEach(function(folderRef) {
        folderRef.getDownloadURL().then(function(url) {

          console.log('Got download URL',url);
         });
        console.log("folderRef",folderRef.toString());
        var blob = null;
        var xhr = new XMLHttpRequest(); 
        xhr.open("GET", "downloadURL"); 
        xhr.responseType = "blob";       
        xhr.onload = function() 
        {
        blob = xhr.response;//xhr.response is now a blob object
        console.log("BLOB",blob)

        // var path = storageRef.child('UploadedFiles/').getDownloadURL(folderRef);
        // var zip = new JSZip();
        // zip.file(path,blob);
    }

        xhr.send();
      });

    }).catch(function(error) {
      console.log(error);
    });
  }

控制台日志:

enter image description here

reactjs firebase firebase-storage redux-firestore
1个回答
0
投票

设置辅助变量以在到达时填充网址。


const urls = [];
res.items.forEach(function(folderRef) {
   folderRef.getDownloadURL().then(function(url) {
      urls.push(url);
   });
});

然后设置一次状态,将可以进行下一步。

this.setState({ urls }):
© www.soinside.com 2019 - 2024. All rights reserved.