【问题标题】:Delete all files of a directory in Firebase storage on Firestore document delete在 Firestore 文档删除中删除 Firebase 存储中目录的所有文件
【发布时间】:2019-10-20 13:46:26
【问题描述】:
exports.deleteItemImages = functions.firestore.document('items/{itemId}')
    .onDelete(async (snap, context) => {
        const deletedValue = snap.data();
        const id = deletedValue.id;

        if (id === null) {
            return null;
        }

        console.log(`itemId to be deleted: ${id}`);

        bucket.deleteFiles({
            prefix: '${id}/'
        }, function (err) {
            if (!err) {
                console.log(`Successfully deleted images with item id: ${id}`);
            } else {
                console.error(`Failed to remove images, error: ${err}`);
            }
        });
    })

我有一个集合items,每个文档都有一个字段id。每个文档都有与之关联的图像,存储在 Firebase 存储中的目录(文件夹)中,文件夹名称相同 id。当删除其各自的 Firestore 文档时,我想删除 Firebase 存储中的每个 id 文件夹。在我的 Firebase 云函数日志中,console.log(Successfully deleted images with item id: ${id}); 行打印成功,但文件夹删除没有发生

编辑:我尝试手动输入prefix: '${id}/' 的文件夹名称,它起作用了。所以连接到 Firebase 存储不是问题,尤其是那条线。

【问题讨论】:

  • 刚刚意识到我的问题。我用单引号写了前缀行,而不是反引号

标签: node.js firebase google-cloud-platform google-cloud-functions google-cloud-storage


【解决方案1】:

NVM。线

prefix: '${id}/'

应该是反引号,而不是单引号

-__-

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-08
    • 1970-01-01
    • 1970-01-01
    • 2021-11-10
    • 1970-01-01
    • 2010-11-05
    相关资源
    最近更新 更多