我正在尝试在我的 Vue.js Firebase 应用程序中实现一个通过 UID 删除/移除用户的功能。该应用程序设置为允许通过电子邮件和密码在 Firebase 身份验证中注册用户。登录后,用户应该能够单击“删除”,以便从 Firebase 身份验证中删除他/她的电子邮件和密码以及用户数据。到目前为止,我有以下删除功能:
async deleteProfile () {
let ref = db.collection('users')
let user = await ref.where('user_id', '==',firebase.auth().currentUser.uid).get()
user.delete()
}
...但我得到 user.delete() 不是一个函数。如何设置删除认证和数据库中用户的功能?谢谢!
更新功能
async deleteProfile () {
let ref = db.collection('users')
let user = await ref.where('user_id', '==', firebase.auth().currentUser.uid).get()
await user.ref.delete()
await firebase.auth().currentUser.delete()
}
最佳答案
在您的代码中,user
是 DocumentSnapshot类型对象。如果要删除文档,可以使用user.ref.delete()
。它返回一个 promise ,因此您需要等待它。
删除文档不会同时删除 Firebase 身份验证中的用户帐户。如果您想删除用户帐户,则必须使用 Firebase 身份验证 API。 firebase.auth().currentUser.delete()
.
关于javascript - 如何使用 Vue.js Firebase UID 删除用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57611582/