/ / Pourquoi l'exemple de chat AngularFire est-il en panne? - angularjs, firebase, angularfire

Pourquoi l'exemple de chat AngularFire est-il en panne? - angularjs, firebase, angularfire

Comme exercice, j’ajoutais une authentification de messagerie à l’application de discussion angularFire de base, comme indiqué sur http://angularfire.com/tutorial/. Au cours du processus, j'ai remarqué que lors de la suppression de la première entrée par le biais de la forge, une entrée non définie apparaissait dans le DOM où se trouvait l'entrée 0.

Lorsque j'ai supprimé la deuxième entrée (id 1), rien ne s'est affiché en raison du message d'erreur suivant: Les doublons dans un répéteur ne sont pas autorisés. Répéteur: msg dans les messages clé: undefined: undefined

J'ai remarqué que le premier non défini apparaît dans letutorial mon code a été dérivé, mais pas le second .. jusqu'à ce que je substitue l'URL .firebaseio-demo.com avec celui à ma base de feu. Cela me porte à croire que ce n’est pas ma mise en oeuvre du code.

Qu'est-ce qui se cache derrière la fumée et les miroirs de .firebaseio-demo.com? Y at-il une règle de validation mystère ou quelque chose?

À un moment donné, l'exemple de Wire up a Backend sur angularjs.org présentait le même problème .. récemment, il semble avoir été corrigé.

Réponses:

0 pour la réponse № 1

Je vois la même chose, c’est pour moi un bug (les éléments supprimés d’un tableau de la forge ne devraient pas apparaître dans un angularFire modèle de tableau lié sur le client). Cet effet ne se produit pas non plus lorsqu’on utilise des collections d’objets au lieu de tableaux, par exemple lorsqu’on utilise angularFireCollection ou lors de la mise en place de l'original messages taper sur un objet: $scope.messages = {} au lieu de $scope.messages = [].

Cependant, depuis ces éléments supprimés sont montrant dans le tableau résultant undefined, ayant plus d'un undefined dans votre tableau des résultats dans un répéteur AngularJS avec des valeurs identiques, qui ne sont pas permis. Donc, l'erreur que vous voyez après la suppression de plusieurs messages est attendue.

Quoi qu’il en soit, pour le moment, il semble que le meilleur moyen de l’éviter consiste à utiliser des collections d’objets au lieu de tableaux comme indiqué ci-dessus ou à mettre en place une sorte de fonction Angular. filter éliminer toute undefined membres de votre répéteur.