【发布时间】:2021-12-03 13:44:55
【问题描述】:
我试图在颤振中使用 onchildchanged 流事件仅获取更改的数据,但问题是它正在获取该节点下未更改的每个数据。
我的数据库:
如果我是流房间节点,并尝试更改房间名称,流正在获取房间节点下的所有数据,在这种情况下我只想要更改的节点数据,即房间名称。
颤振代码:
Query _userdIdQuery = FirebaseDatabase.instance.reference().child("users").child(FirebaseAuthData.auth.currentUser!.uid).child("rooms").orderByKey();
userIdDataAddSubscription = _userdIdQuery.onChildChanged().listen((event){
print(event.snapshot.value);
});
我可以在模态类中将数据与我的本地数据进行比较,但我想要一种高效/更少数据消耗的方法,以避免获得不变的数据。 有什么办法可以解决吗?
编辑:经过一番研究,我发现流节点下的所有数据都会在数据更改时收到,所以我认为没有其他方法可以只获取更改的数据。 目前,我正在考虑流式传输多个节点,流式传输多个节点会影响应用性能和网络使用吗?
【问题讨论】:
标签: firebase flutter firebase-realtime-database