【问题标题】:Firebase path or parent on a flutter firebase database event (onValue, onChildChanged)颤动的firebase数据库事件(onValue,onChildChanged)上的Firebase路径或父级
【发布时间】:2019-07-28 16:21:17
【问题描述】:
我正在尝试在触发侦听器时获取路径或父级
例如。
// Setting Listener on friends info CHANGE
database.reference().child('user/$k/info').onChildChanged.listen((event){
print('Triggered Listener on -- CHANGED -- friend info');
// I want to get the variable k here or the parent value of info when the
// listener is triggered
}),
【问题讨论】:
标签:
firebase
firebase-realtime-database
dart
flutter
【解决方案1】:
我的同事帮助我更好地理解了闭包。因为我在 forEach 中调用了监听函数,所以当监听器触发时,我可以访问变量 $k。
var values = new Map<String, dynamic>.from(snapshot.value);
values.forEach((k, v) =>
{
// k represents each friend's uid pulled from the user's friend list
// Settings Listener on friends info CHANGE
database.reference().child('user/$k/info').onChildChanged.listen((event){
print('$k'); // <- The user ID I was looking for
print('Triggered Listener on -- CHANGED -- friend info');
print('info that changed: ${event.snapshot.key}: ${event.snapshot.value}');
}),```