gpt4 book ai didi

javascript - Firebase 启动从数据库加载与读取新添加内容

转载 作者:行者123 更新时间:2023-12-03 05:52:09 25 4
gpt4 key购买 nike

我有一个 redux-react 应用程序,在启动时监听加载所有 contactList,并监听每个添加的新联系人列表。下面的代码会导致在启动时调用 receiveContactListreceiveContact。如何在启动时调用前者,然后在添加新联系人时调用后者?

contactsRef.once('value', function(snapshot) {
store.dispatch(receiveContactList(snapshot.val()))
})

contactsRef.on('child_added', function(snapshot) {
store.dispatch(receiveContact(snapshot.val()))
})

最佳答案

分开处理初始数据和新数据的常见方法是使用 bool 值来跟踪状态:

var isInitialDataLoaded = false;
contactsRef.once('value', function(snapshot) {
store.dispatch(receiveContactList(snapshot.val()))
isInitialDataLoaded = true;
})

contactsRef.on('child_added', function(snapshot) {
if (isInitialDataLoaded) {
store.dispatch(receiveContact(snapshot.val()))
}
})

这会起作用,因为初始数据的 child_added 事件保证在相应的 value 事件之前触发。

关于javascript - Firebase 启动从数据库加载与读取新添加内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40101948/

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