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

Em caso de demora no Resolver, como adicionar loading?

Existe alguma forma de dar um feedback para o usuário no caso do resolver demorar a responder?

Nos projetos em que trabalho com Angular eu não utilizo Resolver por isso. No próprio Component eu adiciono um ícone de loading na tela, chamo o service e quando o service retorna, escondo o loading.

A solução com o Resolver é mais "bonita", mas não consigo dar esse feedback pro usuário.

1 resposta
solução!

Fala aí Vinicius, tudo bem? O que você pode tentar fazer é utilizar o .merge para isso.

Passe um Observable que será resolvido após tantos segundos (fica a seu critério) e passe também o Observable seu referente ao serviço:

public ngOnInit(): void {
    merge(
        of('Está demorando mais do que o esperado').pipe(delay(2000)),
        this.appService.getCharacters()
    ).subscribe(console.log);
}

Apenas para exemplo, fiz tudo solto e junto no componente, mas poderia ser uma função separada e mais organizado.

Espero ter ajudado.