Estou enviando um ...
[x] bug report
Comportamento atual
Porque Observer
é nomeado com um moniker "changes", eu sinto que AbstractControl.statusChanges
deveria apenas emitir valores sempre que o status realmente mudou. Em vez disso, parece ser executado sempre que valueChanges
é executado, exceto com _status_ como um valor para o retorno de chamada.
Comportamento esperado / desejado
Ele só deve disparar quando o status for alterado.
Reprodução do problema
http://plnkr.co/edit/UTPrVls36cTQjPpwYN2Q
Qual é a motivação / caso de uso para mudar o comportamento?
Eu descobri criando o perfil de uma área extra lenta de nosso aplicativo que causou algum atraso na interface do usuário, então minha principal reclamação seria o desempenho.
No entanto, é terrivelmente fácil adicionar uma operadora distinctUntilChanged
ao assinante para corrigir o problema, mas a expectativa é que você não precise fazê-lo, então é fácil perder sem o teste.
Conte-nos sobre o seu ambiente:
Atualmente statusChanges
emite cada vez que o status é calculado, não necessariamente quando ele muda. Posso ver como isso pode ser enganoso. No entanto, mudar seu comportamento seria uma grande mudança revolucionária para todos os usuários de formulários. Poderíamos possivelmente adicionar um novo emissor de evento para distinguir entre os dois. Gostaria de ter uma ideia de quem usaria isso para estabelecer prioridades. Mais pessoas sentindo a dor disso? Casos de uso?
Comentários muito úteis
Atualmente
statusChanges
emite cada vez que o status é calculado, não necessariamente quando ele muda. Posso ver como isso pode ser enganoso. No entanto, mudar seu comportamento seria uma grande mudança revolucionária para todos os usuários de formulários. Poderíamos possivelmente adicionar um novo emissor de evento para distinguir entre os dois. Gostaria de ter uma ideia de quem usaria isso para estabelecer prioridades. Mais pessoas sentindo a dor disso? Casos de uso?