Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 4135|Risposta: 1

[Angolare] L'operatore finalize RxJS esegue la logica dopo che l'Observable termina

[Copiato link]
Pubblicato su 26/06/2022 18:49:57 | | |
Requisiti: I progetti Angular, cliccando un pulsante su una pagina, inviano una richiesta HTTP perché alcune interfacce richiedono molto tempo, devono mostrare l'effetto animazione di caricamento; quando la richiesta HTTP è completata, l'animazione di caricamento verrà chiusa.Quando la richiesta ha successo o si verifica un errore, devi disattivare l'animazione di caricamento

Scrittura convenzionale

Come segue:

Cioè, quando la richiesta ha successo e si verifica un errore, devi chiamare l'animazione di chiusura del caricamento, c'è un modo più semplice? Simile a try-catch-finally in C#.

Usa l'operatore finalize

Quello che fa è tentativo-cattura-finalefinalmenteFunziona, dobbiamo scrivere il codice una sola volta, e la logica verrà eseguita indipendentemente dal successo o fallimento.

Il codice è il seguente:



Come funziona la finalizzazione? Fondamentalmente aggiunge un callback add (fn) al disassembly di un oggetto osservabile tramite iscrizione. Questo garantisce che venga chiamato in caso di errore, completamento e disiscrizione.

Si noti che l'operatore di finalize viene eseguito non appena il nostro Observable viene terminato. Questo è importante! Per Angular HTTP, questo funziona molto bene perché il servizio HTTP Angular restituisce "fatto" una volta completata la richiesta.

(Fine)




Precedente:Fiddler ritardato nel tempo di risposta dell'interfaccia e nel test di rete debole
Prossimo:Estrae tutto il testo da un file PDF usando C# (supporta .NET Core)
 Padrone di casa| Pubblicato su 18/09/2022 16:05:18 |
Abbonamento a tema tematico per Angular RxJS
https://www.itsvse.com/thread-9209-1-1.html
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com