创建一个简单的应用程序来学习 firebase,想要删除列表中的特定项目。所以,决定用这个方法
const handleDeletion = (name) => {
db.collection('users').doc(`"${name}"`).delete().then(() => {
console.log("document deleted successfully");
}).catch((err) => {
console.log("error:",err)
})
}
//don't mind syntax,below is my idea to delete the item
<div>
{docs && docs.map(doc => (
<div key={doc.id}>
<h4>{doc.name}:{doc.password}</h4>
<button onClick={() => handleDeletion(doc.name)}>Delete</button>
</div>
))}
</div>
我从 firebase 网络文档中获取了这些信息,但是在运行时这不会删除相应的 h4 和文档,但控制台显示文档已成功删除。
答案 0 :(得分:1)
问题很可能来自于您执行 db.collection('users').doc(`"${name}"`)
的事实。声明 template literal: db.collection('users').doc(`${name}`)
时不应使用双引号。
您可以通过执行以下操作来查看问题:
const name = "abcd";
console.log(`"${name}"`) // => "abcd" instead of abcd