applyChanges
The applyChanges
method applies a set of Changes
to the Store
.
applyChanges(changes: Changes): this
This method will take a Changes
object (which is available at the end of a transaction) and apply it to a Store
. The most likely need to do this is to take the changes made during the transaction of one Store
, and apply it to the content of another Store
- such as when persisting and synchronizing data.
Any part of the provided Changes
object are invalid (either because of its type, or because it does not match the schemas associated with the Store
) will be ignored silently.
The method returns a reference to the Store
so that subsequent operations can be chained in a fluent style.
Prior to v5.0, this method was named setTransactionChanges
.
Example
This example applies a Changes
object that sets a Cell
and removes a Value
.
import {createStore} from 'tinybase';
const store = createStore()
.setTables({pets: {fido: {species: 'dog', color: 'brown'}}})
.setValues({open: true});
store.applyChanges([{pets: {fido: {color: 'black'}}}, {open: null}]);
console.log(store.getTables());
// -> {pets: {fido: {species: 'dog', color: 'black'}}}
console.log(store.getValues());
// -> {}
Since
v5.0.0