【问题标题】:Firebase maximum delete is only 10Firebase 最大删除量仅为 10
【发布时间】:2020-12-06 11:50:30
【问题描述】:

我正在开发一个应用程序,如果用户删除他的帐户,他的其他项目也会被删除,但是,firebase 只允许删除发生 10 次。我该如何克服呢?删除只发生在 this.MyReviewsarray.foreach 和 this.myFavourites。谢谢

this.mFirestore.collection("Users").doc(success.user.uid).delete().then((res) => {
                this.mAuth.auth.currentUser.delete().then((res) => {
                  console.log(res)
                  this.myReviewArray.forEach(element => {
                    this.mFirestore.collection('Reviews').doc(element.id).delete();
                  });

                  this.myFavouritesArray.forEach(elements => {
                    this.mFirestore.collection("Favourites").doc(elements.id).delete();
                  })
                  this.toastController.create({
                    message: "Account Successfully Deleted",
                    duration: 2000
                  }).then(alert => alert.present());
                  this.router.navigateByUrl('/login')
                }).catch((err) => {})
              })

【问题讨论】:

  • 你绝对不应该在前端做这样的事情,主要是因为你必须同时进行大量的查询。您应该为此使用triggers。

标签: javascript firebase ionic-framework google-cloud-firestore firebase-authentication


【解决方案1】:

您的代码应在删除用户帐户本身之前删除用户数据。用户帐户应该是最后要删除的东西,这样用户才能在所有其他删除操作中保持身份验证。

您的代码还应注意所有对 delete() 的调用返回的承诺,并且只有在所有其他承诺完全解决后才删除用户帐户。现在,您的代码完全忽略了所有这些承诺。

【讨论】:

    猜你喜欢
    • 2018-03-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-03
    • 1970-01-01
    • 2013-07-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多