【问题标题】:list all files in firebase storage v9列出 Firebase 存储 v9 中的所有文件
【发布时间】:2021-12-18 15:44:17
【问题描述】:

我正在开发一个页面并使用 firebase 存储作为文件存储。我尝试在 firebase 开发人员文档中使用给定的代码,但我似乎无法使其工作。可能是什么问题?

document.getElementById("but").addEventListener('click', e => {

    // Create a reference under which you want to list
    const listRef = ref(storage, 'folder/');
    // Find all the prefixes and items.
    listAll(listRef)
        .then((res) => {
            res.prefixes.forEach((folderRef) => {
                // All the prefixes under listRef.
                // You may call listAll() recursively on them.
            });
            res.items.forEach((itemRef) => {
                // All the items under listRef.
                console.log( getDownloadURL(ref(storage, `folder/${itemRef}`)))
            })
        })
});

【问题讨论】:

  • “我似乎无法让它工作” 您共享的代码有什么问题?如果有错误,请在您的问题中分享错误消息和堆栈跟踪。如果没有错误,在每一行设置断点并在调试器中运行代码。哪一行是第一个不符合您预期的行?

标签: javascript firebase firebase-storage


【解决方案1】:

我不确定您的代码有什么问题,但有一个错误:

res.items.forEach((itemRef) => {
    // All the items under listRef.
    console.log( getDownloadURL(ref(storage, `folder/${itemRef}`)))
})

getDownloadURL 函数对服务器执行异步调用,因此您需要使用 awaitthen 来捕获该结果:

res.items.forEach((itemRef) => {
    getDownloadURL(ref(storage, `folder/${itemRef}`))
        .then((downloadURL) => {
            console.log(downloadURL);
        });
})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-10-14
    • 2021-03-17
    • 2020-12-22
    • 2022-01-12
    • 1970-01-01
    • 2020-10-30
    • 2019-12-10
    • 1970-01-01
    相关资源
    最近更新 更多