大佬教程收集整理的这篇文章主要介绍了useState 未按预期呈现,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个名为 chats
的状态,我在其中存储来自 firebase 的所有消息,并尝试在应用程序中呈现它。但它不呈现
这是我的组件的状态:
const [chats,setChats] = useState([]);
我将消息带入 UseEffect 钩子以使其运行应用程序
useEffect(() => {
let merged_uID = uID_merger(current_user.ID,chat_user.uID);
database()
.ref('/')
.child(`chats/${merged_uID}`)
.on('child_added',(msgs) => {
console.log(msgs);
chats.push(msgs.val());
setChats(chats);
});
},[]);
但 ID 不呈现。
由于聊天是一种状态,因此您无法使用 chats.push(msgs.val());
对其进行变异,而您需要做的是替换
chats.push(msgs.val());
setChats(chats);
与
setChats([...chats,msgs.val()])
以上是大佬教程为你收集整理的useState 未按预期呈现全部内容,希望文章能够帮你解决useState 未按预期呈现所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。