Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Sobre o PIPE

No code foi utilizado o .pipe

ele seria algo semelhante o .then? porém com alguma aplicação específica?

EX:

autenticar(usuario: string, senha: string): Observable<HttpResponse<any>> { return this.httpClient .post(${API}/user/login, { userName: usuario, password: senha, }, { observe: 'response' } ) .pipe( tap((res) => { const authToken = res.headers.get('x-access-token') ?? ''; this.usuarioService.salvaToken(authToken); }) ); }

1 resposta
solução!

Olá Emerson, tudo tranquilo?

Eles são diferentes

O método .pipe(), nesse caso, pertence ao RXJS e sua funcionalidade está ligada, geralmente, a um Observable. Sua execução se assemelha a um funíl/cano mesmo rs Ele pode vincular operadores, permitindo que você combine funções, fazendo uma "ligação" entre elas. Isso resulta em uma nova e única função, que executa as operações em conjunto para dar um retorno único

Já o .then() está mais ligado a uma Promisse, você ainda pode encadear sua chamada passando outras execuções em seguida, mas não é tão performático (é o que pode gerar o callback hell), e não da pra você ir passando multiplos valores e caso dê algum erro, a execução cai em uma child promisse e por ai vai

Talvez esse artigo da própria documentação do Angular ajude a entender melhor o uso do .pipe e a diferença do Observable x Promisse https://angular.io/guide/comparing-observables

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software