Я хотел бы отфильтровать путь Firebase и посмотреть, существует ли ребенок на моем пути.
Я просто хочу вернуть значения, у которых есть дорожный вызов «reponses». Это работает, но когда путь не имеет этого ребенка, это бросить мне эту ошибку:
Ошибка AngularJs в возвращаемом значении из функции фильтра
firebase.js:283 Uncaught TypeError: Cannot read property '$value' of
firebase.js:276 FIREBASE WARNING: Exception was thrown by user callback.
TypeError: Cannot read property '$value' of undefined
я использую Firebase-Util и Angularfire так:
var ref = firebase.database().ref();
var nc = new firebase.util.NormalizedCollection(
ref.child('accounts/' + $localStorage.accountId + '/demandes'),
[ref.child('demandes'), 'widget2']).select('widget2.duree', 'widget2.derniere_modification', 'widget2.reponses', 'widget2.exp', 'widget2.ajout_le', 'widget2.localisation').
filter(function(data, key, priority) {
return data.reponses.$value !== null; // This cause problems !
}).ref();
$scope.items = $firebaseArray(nc);
Как я могу сделать проверить надлежащим образом, кроме return data.reponses.$value !== null;
? Спасибо
Почему бы не проверить наличие и возвращение детей (data.responses && data.responses. $ Value! == null)? – mhodges