Javascript 使用云功能从Firestore中删除文档

Javascript 使用云功能从Firestore中删除文档,javascript,firebase,google-cloud-firestore,google-cloud-functions,Javascript,Firebase,Google Cloud Firestore,Google Cloud Functions,我正在努力使这个云功能正常工作。我想从Firestore中删除一个名为上次函数执行日期的文档。这个函数应该在每晚凌晨2点执行,但由于某些原因它不起作用。这是我的密码: exports.deleteYesterday = functions.pubsub .schedule("0 02 * * *") .onRun(async (context) => { var yesterday = new Date(); var dd

我正在努力使这个云功能正常工作。我想从Firestore中删除一个名为上次函数执行日期的文档。这个函数应该在每晚凌晨2点执行,但由于某些原因它不起作用。这是我的密码:

exports.deleteYesterday = functions.pubsub
    .schedule("0 02 * * *")
    .onRun(async (context) => {
        var yesterday = new Date();
        var dd = String(yesterday.getDate() - 1).padStart(2, "0");
        var mm = String(yesterday.getMonth() + 1).padStart(2, "0"); 
        var yyyy = yesterday.getFullYear();

        const dateString = (yyyy + "-" + mm + "-" + dd).toString();

        let ref = admin.firestore().collection("citas").doc(dateString);
        return ref.delete();
    });
记录dateString值时,我获得了所需的正确日期格式:

以下是数据库的外观:


谢谢

您的数据库截图显示没有名为“citas/2020-12-02”的文档。它可能已经被删除了。您可以分辨出来,因为文档的名称是斜体的。斜体表示没有文档,但有嵌套的子集合组织在它下面。删除父文档时,不会删除这些子集合。如果希望子集合中的所有文档消失,则必须编写一些代码来删除这些文档

另见:


您做了哪些调试工作?请记录您在此处使用的变量的所有值,并确认它们是您期望的值。我们无法查看数据库中的数据,也无法查看这些字符串的值,以便验证此程序是否应该执行您想要的操作。您可以使用底部的编辑链接编辑带有调试信息的问题。