이 기사에서는 Angular Observable에 대해 설명합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.
추천 관련 튜토리얼: "angular Tutorial"
Observable 객체는 애플리케이션 게시자와 구독자 간의 메시지 전송을 지원합니다.
Observable은 선언적입니다. 즉, 소비자가 구독할 때까지 실제로 실행되지 않는 값을 게시하도록 정의된 함수입니다.
observable에 의해 발생할 수 있는 세 가지 유형의 알림:
알림 유형 | 설명 |
---|---|
next | 필수입니다. 각 배송 값을 처리하는 데 사용됩니다. 실행이 시작된 후 0번 이상 실행될 수 있습니다. |
error | 선택사항. 오류 알림을 처리하는 데 사용됩니다. 오류로 인해 관찰 가능한 객체 인스턴스의 실행이 중단됩니다. |
완료 | 선택사항. 완료 알림을 처리하는 데 사용됩니다. 실행이 완료되면 이 값은 계속해서 다음 프로세서로 전달됩니다. |
Define Observer
Observer(관찰자): Observer 인터페이스를 구현하는 데 사용되는 프로세서는 Observer 인터페이스를 구현해야 합니다. 전송될 수 있는 알림 유형.
관찰자 개체는 이 세 가지 프로세서의 조합을 정의할 수 있습니다. 특정 알림 유형에 대한 핸들러를 제공하지 않으면 관찰자는 해당 유형의 알림을 무시합니다.
// Create observer object const myObserver = { next: (_data) => { // next通知类型处理器 }, error: err => { // error通知类型处理器 }, complete: () => console.log('Observer got a complete notification'), };
Subscription
Observable 인스턴스는 Observable 인스턴스가 구독될 때만 값을 게시합니다. 구독할 때 먼저 인스턴스의 subscribe() 메서드를 호출하고 이를 관찰자 개체에 전달하여 알림을 받아야 합니다.
구문: Observable.subscribe(ObserverObject)
, 여기서 Observable은 관찰 가능한 객체 인스턴스이고 ObserverObject는 관찰자 객체입니다. Observable.subscribe(ObserverObject)
,其中,Observable为可观察对象实例,ObserverObject为观察者对象。
// 官网示例 // Create simple observable that emits three values const myObservable = of(1, 2, 3); // Create observer object const myObserver = { next: x => console.log('Observer got a next value: ' + x), error: err => console.error('Observer got an error: ' + err), complete: () => console.log('Observer got a complete notification'), }; // Execute with the observer object myObservable.subscribe(myObserver); // Logs: // Observer got a next value: 1 // Observer got a next value: 2 // Observer got a next value: 3 // Observer got a complete notification
另外,subscribe() 方法还可以接收定义在同一行中的回调函数,无论 next、error 还是 complete 处理器。比如,下面的 subscribe() 调用和前面指定预定义观察者的例子是等价的。
myObservable.subscribe( x => console.log('Observer got a next value: ' + x), err => console.error('Observer got an error: ' + err), () => console.log('Observer got a complete notification') );
注: 无论哪种情况,next通知类型的处理器是必要的,而error和complete处理器是可选的。
subscribe() 调用会返回一个 Subscription 对象,该对象具有一个 unsubscribe()
rrreee
unsubscribe()
메서드가 있는 🎜Subscription 개체🎜를 반환합니다. 이 메서드가 호출되면 알림 수신이 중지됩니다. 🎜🎜더 많은 프로그래밍 관련 지식을 보려면 🎜프로그래밍 비디오🎜를 방문하세요! ! 🎜위 내용은 Angular의 Observable(관찰 가능한 객체)에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!