使用 JavaScript 中的 Firebase 实时数据库从所有键检索值返回未定义

问题描述 投票:0回答:1

在我正在制作的一个小型应用程序中,我试图从我创建的函数的参数中检索特定的注释标题和文本。参数是关键。

function viewNote(note) {
    alert(note)
    var fetchedNote = database.ref('Users/' + localStorage.getItem('username') + "/Notes/" + note)
    fetchedNote.on('value', (snapshot2) => {
        var data = snapshot2.val()
        for (var key in data) {
            var value = data[key]
            var ti = value.title
            var te = value.text
            console.log(ti + ", " + te)
        }
    })
}

当我尝试从父键

Notes
获取所有键时,我得到所有子节点,没有未定义的错误。它们工作正常,但是当我尝试从 Notes 键获取子节点信息标题和文本时,我得到了未定义的信息。遇到这种情况我该怎么办?谢谢您的宝贵时间。

我尝试过的和我想要的: 我尝试使用上面的代码,但仍然出现未定义的错误,我之前也使用过

let
但仍然不起作用。 我想要标题和文本键值而不是未定义。谢谢。

javascript firebase firebase-realtime-database
1个回答
0
投票

由于您获得的单个节点具有到该节点的直接路径,因此您获得的快照仅包含该节点。所以你不需要循环它的孩子。

var fetchedNote = database.ref('Users/' + localStorage.getItem('username') + "/Notes/" + note)
fetchedNote.on('value', (snapshot2) => {
    var value = snapshot2.val()
    var ti = value.title
    var te = value.text
    console.log(ti + ", " + te)
})
© www.soinside.com 2019 - 2024. All rights reserved.