Utility Operators
Utility operators no RxJS são um grupo de operadores responsáveis pelo processamento auxiliar de streams (efeitos colaterais, controle de estado, suporte de UI, etc.) em vez do propósito principal de conversão ou filtragem de dados.
Nesta página, os operadores são categorizados por finalidade conforme mostrado abaixo, e uma lista é fornecida para confirmar seu uso básico. Para uso detalhado e exemplos práticos, consulte as respectivas páginas ou Casos de Uso Práticos.
Lista de Operadores (por Finalidade)
◾ Efeitos Colaterais e Controle de Estado
| Operador | Descrição | Frequentemente Combinado Com |
|---|---|---|
| tap | Executa efeitos colaterais sem alterar valores (saída de log, atualizações de UI, etc.) | map, switchMap |
| finalize | Executa processamento de limpeza quando o stream termina | tap, catchError |
◾ Controle de Timing e Atraso
| Operador | Descrição | Frequentemente Combinado Com |
|---|---|---|
| delay | Atrasa a emissão de cada valor por um tempo especificado | tap, concatMap |
| timeout | Gera um erro se a emissão exceder um determinado tempo | catchError, retry |
| takeUntil | Encerra a inscrição quando o Observable especificado notifica | interval, fromEvent |
◾ Valor Inicial, Repetição, Conversão de Array, etc.
| Operador | Descrição | Frequentemente Combinado Com |
|---|---|---|
| startWith | Emite um valor inicial no início do stream | scan, combineLatest |
| repeat | Reinscreve-se no stream inteiro após a conclusão | tap, delay |
| retry | Tenta novamente em caso de erro | catchError, switchMap |
| toArray | Emite todos os valores no stream como um único array (na conclusão) | concatMap, take |
Observações
- Diferença entre
retryerepeat:retry: Tenta novamente em caso de errorepeat: Tenta novamente após conclusão bem-sucedida
toArraynão gera um valor a menos que seja concluído, então é comumente usado comtake()e assim por diante.