Angular: AbstractControl.statusChanges semble se déclencher inutilement

Créé le 9 août 2016  ·  1Commentaire  ·  Source: angular/angular

Je soumets un...

[x] bug report

Comportement actuel

Parce que le Observer est nommé avec un surnom de "changements", j'ai l'impression que AbstractControl.statusChanges ne devrait émettre des valeurs que lorsque le statut a réellement changé. Au lieu de cela, il semble s'exécuter chaque fois que valueChanges s'exécute, sauf avec _status_ comme valeur pour le rappel.

Comportement attendu/souhaité

Il ne devrait se déclencher que lorsque l' état a changé.

Reproduction du problème
http://plnkr.co/edit/UTPrVls36cTQjPpwYN2Q

Quelle est la motivation / le cas d'utilisation pour changer le comportement ?
Je l'ai trouvé en profilant une zone très lente de notre application qui a causé un certain décalage de l'interface utilisateur, donc ma principale plainte serait les performances.

Il est cependant terriblement facile d'ajouter un opérateur distinctUntilChanged à l'abonné pour résoudre le problème, mais l'on s'attend à ce que vous n'en ayez pas besoin, donc c'est facile à manquer sans tester.

Parlez-nous de votre environnement :

  • Version angulaire : 2.0.0-rc.4
  • Navigateur : tous
  • Langue : tous
forms feature medium obvious

Commentaire le plus utile

Actuellement, statusChanges émet à chaque fois que le statut est calculé, pas nécessairement lorsqu'il change. Je peux voir en quoi cela peut être trompeur. Cependant, changer son comportement serait un changement assez important pour tous les utilisateurs de formulaires. Nous pourrions éventuellement ajouter un nouvel émetteur d'événements pour faire la distinction entre les deux. J'aimerais savoir qui utiliserait cela pour établir la priorité. Plus de gens ressentent la douleur de cela? Cas d'utilisation ?

>Tous les commentaires

Actuellement, statusChanges émet à chaque fois que le statut est calculé, pas nécessairement lorsqu'il change. Je peux voir en quoi cela peut être trompeur. Cependant, changer son comportement serait un changement assez important pour tous les utilisateurs de formulaires. Nous pourrions éventuellement ajouter un nouvel émetteur d'événements pour faire la distinction entre les deux. J'aimerais savoir qui utiliserait cela pour établir la priorité. Plus de gens ressentent la douleur de cela? Cas d'utilisation ?

Cette page vous a été utile?
0 / 5 - 0 notes