我正在尝试捕获Firebase数据中嵌套数组的更改。数据的布局如下:
我需要跟踪更改呼叫的时间以及添加或删除响应者的时间。我正在努力追踪电话的响应者 - 我不会提前获得随机ID,因此我需要实时跟踪每次呼叫变更的呼叫和响应者。
这是我到目前为止所拥有的。一些与路径相关的代码和获得JWT的代码丢失了 -
var ref = new Firebase('https://foobar.firebaseio.com/clients/' + clientAuth);
var callRef = ref.child('calls');
$scope.activeCalls = 0;
$scope.calls = $firebase(callRef);
$scope.calls.$on("change", function() {
var keys = $scope.calls.$getIndex();
$scope.activeCalls = keys.length;
keys.forEach(function(key, i) {
console.log($scope.calls[key].responders);
// This provides an object with array of responders
});
});
更新
我记得来自常规Firebase的child_added
..想出了这个。一个更有说服力的方式将被赞赏,我试图保持这更加基于Angular。
$scope.calls.$on("child_added", function(v) {
console.log(v.snapshot.value); // This gives me the details I need
});