Was ist der Unterschied zwischen RxJS Complete und Add? Welches ist besser zum Laden von Spinnern?
P粉649990273
P粉649990273 2023-09-15 21:27:17
0
1
785

Ich habe diesen Code unten, den ich gleichzeitig erstellt und hinzugefügt habe, und ich habe add als Methode verwendet, um das Laden des Spinners zu stoppen, wenn ich den Controller aufrufe, da dies der richtige Weg zu sein scheint, das Laden des Spinners zu stoppen, wenn Es existiert ein Problem mit dem Aufruf vom Controller, da Add() immer aufgerufen wird.

Aber ich möchte wissen, was der Zweck von „complete“ ist und ob ich es anstelle von „add“ verwenden sollte, um zu verhindern, dass mein Spinner auf der Clientseite rotiert? Was ist der Unterschied zwischen Hinzufügen und Vervollständigen?

this.loadingSpinner = true;

this.membersService.getMemberProfile().subscribe({
  next: (v) => {
    // load profile into form
  },
  error: (e) => {
    console.error(e);
  },
  complete: () => {
    this.loadingSpinner = false;
  }
}).add(() => {
  this.loadingSpinner = false;
});

P粉649990273
P粉649990273

Antworte allen(1)
P粉127901279

Observable.subscribe 返回一个 Subscription 对象,并且 Subscription.add 是一种告诉订阅在取消订阅时执行某些操作的方法。

Observer.complete 在可观察对象被调用时被调用收听成功完成。

因此,对于您的代码,.add() 效果更好,因为无论出现错误还是成功完成,都会调用它。

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage