An observable on the contained data.
Example:
const s = new State<number>(0)
s.obs$.filter(v => v%2==0 ).subscribe(stateContent => console.dir(stateContent))
Subject that can be used to set a new element value by sending a MapSetMessage into.
return an Observable of the length
Property to retrieve a subject to be used to update the content.
Examples:
The following add a value to the content of a State that contain a list of number. Subscribers will receive updates. (see update for an example with more explanations)
const s = new State<number[]>([1])
s.obs$.subscribe(stateContent => console.dir(stateContent))
const append => newVal => stateContent => [...stateContent, newVal]
s.updater$s.next(append(2)); // see below the update syntax shortcut.
It is also possible to directly set the state instead of passing a function updating the state
const s = new State<number[]>([1])
s.obs$.subscribe(stateContent => console.dir(stateContent))
s.updater$s.next([3,4,5])
In some case it is not required have any initial value
const s = new State<number>() // no initial value
s.obs$.subscribe(stateContent => console.dir(stateContent)) // triggered with a 1 second delay
setTimeout(() => s.update(1), 1000) // delay the update
A subject for updating the content.
Remark: The returned observer is partial and will ignore error
and complete
messages.
remove an element from the map.
key of the data todelete
remove all element from the map.
retrieve an element with default value.
This function tries to return the value associated to the name key or otherwise return the default value defValue.
an observable on the data found.
check if an element exist.
key of the data to check
an boolean observable indicating whetever the element exists or not.
Method to be used to update the content.
Example 1:
The following add a value to the content of a State that contain a list of number. Subscribers will receive updates.
// Create a state with an initial value
const s = new State<number[]>([1])
// Subscribe to the state
s.obs$.subscribe(stateContent => console.dir(stateContent))
// transformation function that append a value at the end of an array and
// return the new array.
const append => newVal => stateContent => {return [...stateContent, newVal]}
// Append 2 at the end of the array contained in the state s.
// (Subscribers, like above will be triggered)
s.update(append(2))
Example 2:
The following set the content of a State that contain a list of number. Subscribers will receive updates.
// Create a state with an initial value
const s = new State<number[]>([1])
// Subscribe to the state
s.obs$.subscribe(stateContent => console.dir(stateContent))
// Set the new array contained in the state s.
// (Subscribers, like above will be triggered)
s.update([3,4])
Example 3:
The following exemple create a state without initial value. Later the content is set and latter it is updated
// Create a state with an initial value
const s = new State<number[]>()
// Subscribe to the state
s.obs$.subscribe(stateContent => console.dir(stateContent))
// transformation function that append a value at the end of an array and
// return the new array.
const append => newVal => stateContent => [...stateContent, newVal]
// Set an initial value
// Set the new array contained in the state s.
// (Subscribers, like above will be triggered)
s.update([1])
// Update the content by adding a value to the list
// Set the new array contained in the state s.
// (Subscribers, like above will be triggered)
s.update(append(2));
A transformation function that takes as argument the current data of the state and return the updated data.
nothing
Generated using TypeDoc
Subject than can be used to delete an element by sending the key of the element to delete.