【发布时间】:2018-02-18 11:58:00
【问题描述】:
我正在使用 JavaScript 和 firebase 构建一个 Web 应用程序。
每次点击“删除”段落标签时,只能删除最近添加的项目,不能删除其余的。
示例:如果我有 9 个项目,而我刚刚添加了第 10 个项目,我只能删除第 10 个项目,而不能删除其他 9 个项目。我基本上只能按倒序移除项目,而不是能够以我选择的任何顺序移除项目。
这是我的代码:
function displayFav(){
const dbRef = firebase.database().ref();
dbRef.on("value", (firebaseData) => {
// empty out element before adding new updated firebase data so there are no repeated data
document.getElementById("displayUsername").innerHTML = "";
let accounts = [];
const accountData = firebaseData.val();
for (let itemKey in accountData) {
accountData[itemKey].key = itemKey;
accounts.push(accountData[itemKey])
const key = accountData[itemKey]["key"];
const password = accountData[itemKey]["password"];
let user = accountData[itemKey]["username"];
// code where I try to render results from page
document.getElementById('displayUsername').innerHTML += `
<li> Username: ${user} Password: ${password}</li>
<p id=${key}>Remove</p>
`;
// code where I try to remove the item
document.getElementById(key).addEventListener("click", function(){
removeItem(key)
})
}
});
}
这是我删除 firebase 数据的功能:
function removeItem(itemToRemove){
const dbRef = firebase.database().ref(`${itemToRemove}`);
dbRef.remove();
};
我可以更改或添加什么到我的代码中,以允许我按我想要的任何顺序删除项目,而不是让我只删除最近的项目?
【问题讨论】:
标签: javascript html api firebase