gpt4 book ai didi

javascript - TypeError : messagesRef. child 不是函数

转载 作者:行者123 更新时间:2023-12-01 03:17:23 25 4
gpt4 key购买 nike

我有一个 React 项目,我正在尝试使用 Firebase 构建数据库。我想为子节点创建引用,但我不断收到

'TypeError: messagesRef.child is not a function'

第 3 行出现代码错误。以下是我的引用代码:

/* Create reference to messages in Firebase Database */
var messagesRef = firebase.database().ref('messages').limitToLast(30);
var usersRef = messagesRef.child('messsages/users');

usersRef.on('child_added', snapshot => {
/* Update React state when message is added at Firebase Database */
let message = {
text: snapshot.val(),
id: snapshot.key
};
var messagesArray = this.state.messages;
messagesArray.push(message)
this.setState({
messages: messagesArray
});
let username = {
text: snapshot.val(),
id: snapshot.key
};

})

我是否正确地引用了这些内容?我完全按照 Firebase 文档进行操作,但找不到解决方案。

最佳答案

我认为问题在于

var messagesRef = firebase.database().ref('messages').limitToLast(30);

属于类型

firebase.database.Query

并且不是类型

firebase.database.Reference

方法 child 只能在 Reference 类型对象上调用,因此您可以使用

var messagesRef = firebase.database().ref('messages/users').limitToLast(30);

假设您的数据库结构如下:

{
messages: {
users: {
someuserid: data,
otheruserid: data,
...
}
}
}

关于javascript - TypeError : messagesRef. child 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45464493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com