1. Introduction
An Observer is a consumer of values delivered by an Observable. Observable has callbacks for each type of notification delivered by an Observable: next, error and complete. A typical Observer object looks like the following:
let observer = {
next: value => console.log('next value: ' + x),
error: err => console.error('error: ' + err),
complete: () => console.log('Complete notification'),
};
2. Using an Observer
To use the Observer, provide it to the subscribe of an Observable:
observable.subscribe(observer);
3. Partial observer
It is not mandatory for an Observer to have all three types of callbacks. If any type of callback is missing, it is still a valid Observer. If any of the three callbacks is missing then that type of notification will be missed. Following is an example of partial observer:
let observer = {
next: value => console.log('next value: ' + x),
error: err => console.error('error: ' + err),
};
While subscribing to an Observable, you may provide only the next callback as an argument without being a part of an Observer object, for example:
observable.subscribe(value => console.log('next value: ' + value));
Behind the scenes, it will create an Observer object using the next callback passed as the argument.
