Angular: ngIf="returnsPromise() | async" vai para loop infinito

Criado em 26 jan. 2016  ·  3Comentários  ·  Fonte: angular/angular

Eu estava experimentando com o AsyncPipe que isso aconteceu. Se um método estiver retornando uma promessa e você o canalizar para o AsyncPipe, ele irá para um loop infinito e travará o navegador.

screen shot 2016-01-25 at 8 45 42 pm

_Desculpe pela captura de tela, a guia estava congelada e não consegui copiar o código_

Comentários muito úteis

esse é um comportamento esperado, pois cada vez que o método é chamado, você está retornando uma nova instância da promessa, que quando resolvida, aciona a detecção de alterações, que recupera uma nova promessa, que aciona a detecção de alterações....

Você deve a) geralmente evitar chamar métodos da visão e b) atribuir uma promessa a uma propriedade

Todos 3 comentários

esse é um comportamento esperado, pois cada vez que o método é chamado, você está retornando uma nova instância da promessa, que quando resolvida, aciona a detecção de alterações, que recupera uma nova promessa, que aciona a detecção de alterações....

Você deve a) geralmente evitar chamar métodos da visão e b) atribuir uma promessa a uma propriedade

@robwormald O exemplo dado nos documentos descreve o encaminhamento de uma promessa para o AsyncPipe.

Esses documentos devem ser atualizados?

Documentos de origem

angular.io

Este problema foi bloqueado automaticamente devido à inatividade.
Registre um novo problema se você estiver encontrando um problema semelhante ou relacionado.

Leia mais sobre nossa política de bloqueio automático de conversas .

_Esta ação foi realizada automaticamente por um bot._

Esta página foi útil?
0 / 5 - 0 avaliações