从Firebase中的列表中删除/删除项目

时间:2017-03-22 01:16:45

标签: javascript firebase firebase-realtime-database

我目前正在尝试使用Firebase从我的Javascript应用中的列表中删除单个项目,而且我目前遇到了很多困难。下面的代码只是它的一个非常简化的版本。

var itemList = document.getElementById("itemList");

window.onload = function () {
   queryData();
}

function queryData() {

   return databaseRef.on('child_added', function (snapshot) {

        itemList.innerHTML +=
            "<li>"
            + snapshot.child("title").val() + "&nbsp" +
            <!-- This is the code where I'm trying to delete -->
            "<a href='#itemList' onclick='deleteItem("+snapshot.key+")'>Delete</a>" +
            "</li><br/>";

    });

}

function deleteItem(itemToDelete) {
    //Just using console.log to make sure each key is being referenced
    console.log(itemToDelete);
}

当我选择“删除”时,它会识别出我想要的密钥。链接但返回错误:

未捕获的ReferenceError:未定义KfMB_sYMvARj1apJwST。

我尝试过使用appendChild()来添加标识符但没有成功。这看起来像是:

    snapshot.key.appendChild(identfier); 

其中identifier只是一个从0开始的变量,并循环遍历for循环中的每个项目。这引发了Firebase.js中的错误,我猜这是因为它试图异步执行此操作所以我先将键存储在数组中,然后尝试使用appendChild()添加到数组中的每个项目但得到了相同的错误回来了。我已经看过这类应用程序的视频是在iOS,Angular,Android中构建的,但我似乎无法找到任何原生的javascript解决方案来使其工作或成功调整其他语言的解决方案。 / p>

我在使用Javascript进行编码时仍然是一个业余爱好者,而我可以创建一个离线列表应用,并且可以添加/编辑/删除足够简单 - 对来自Firebase的数据执行相同操作时感觉非常混乱。任何帮助将非常感谢!

0 个答案:

没有答案