Angular Reactive Development: Difference between revisions
Jump to navigation
Jump to search
Line 25: | Line 25: | ||
==Resources== | ==Resources== | ||
The demos were at https://github.com/DeborahK/Angular-RxJS | The demos were at https://github.com/DeborahK/Angular-RxJS | ||
=Terms and Syntax= | |||
==Observer== | |||
Observes the stream and responds to its notification | |||
*Next item | |||
*Error occurred | |||
*Complete | |||
<syntaxhighlight lang="ts"> | |||
const observer = { | |||
next: apple => console.log(`Apple emitted ${apple}`), | |||
error: err => console.log(`Error occurred ${err}`), | |||
complete: ()=> console.log(`No more Apples`) | |||
} | |||
</syntaxhighlight> | |||
==Obeservable Stream== | |||
Also call an Observable sequence, a stream and can have a stream of any type of data such as number, string, events, objects or other streams and of course http requests | |||
<syntaxhighlight lang="ts"> | |||
const appleStream = new Observerable(appleObserver => { | |||
appleObserver.next(`Applie 1`) | |||
appleObserver.next(`Applie 2`) | |||
appleObserver.complete() | |||
}) | |||
</syntaxhighlight> |
Revision as of 01:51, 6 December 2020
Introduction
Background
RxJs originally was developed by Microsoft in Rx.NET. It works on Java and other platforms. The definition is "RxJs is a library for composing asynchronous and event-based programs using observable sequences"
Other approaches
- Callbacks - difficult to use with nested async operations
- Promises - can only handle a single emission and is not cancellable
- Asyc/await - can only handle a single emission and is not cancellable
Why Rxjs
- One - technical for all data e.g. mouse clicks, api calls
- Compositional - with the operators easy to transform and combine
- Watchful - With its push model to notify subscribers
- Laxy - Only executes when subscribed to
- Handles Error - Built in
- Cancellable
Angular already use RxJs in
- Routing
- Reactive Forms
- HttpClient
Reactive Development
This is characterized by
- Quick to react to user - drrrrrr
- Resilient to failure -error checking all the time
- Reactive to state changes
Resources
The demos were at https://github.com/DeborahK/Angular-RxJS
Terms and Syntax
Observer
Observes the stream and responds to its notification
- Next item
- Error occurred
- Complete
const observer = {
next: apple => console.log(`Apple emitted ${apple}`),
error: err => console.log(`Error occurred ${err}`),
complete: ()=> console.log(`No more Apples`)
}
Obeservable Stream
Also call an Observable sequence, a stream and can have a stream of any type of data such as number, string, events, objects or other streams and of course http requests
const appleStream = new Observerable(appleObserver => {
appleObserver.next(`Applie 1`)
appleObserver.next(`Applie 2`)
appleObserver.complete()
})