Bei den Reactive Forms von Angular kann eine FormGroup oder ein FormControl mit der markAsPending Methode als pending markiert werden.
Es gibt jedoch keine unmarkAsPending Methode, aber dafür einen Workaround, um den pending Status zu verlassen.
...
doSomethingAsyncWithTheForm(): void {
const control: FormControl = new FormControl();
this.control.markAsPending();
this.apiService.doSomethingAsync()
.pipe(map(() => {
// Unmark from pending hack
this.control.setErrors(this.control.errors);
}))
.subscribe();
}
...
Der Workaround besteht darin die Errors des Controls mit dem bestehenden Wert zu überschreiben.
Somit ist dies gleichbedeutend mit unmarkAsPending.
this.control.setErrors(this.control.errors);
Du hast eine anderen Lösungsweg? Dann lass uns alle daran teilhaben und hinterlasse einen Kommentar. Danke!