tarant-local-storage
v2.0.2
Published
local storage resolver and materializer for offline applications
Downloads
16
Readme
Motivation
Usually complex applications need to store offline part of the state, so it can be synced back or reused later. This module lets tarant store your actors serialized in the local storage and recovered implicitly.
Installation
Add it to your project using npm install tarant-local-storage --save
or yarn add tarant-local-storage
Usage
You need to mark which classes need to be exported first. Usually this is done with the LocalStoragePersisted
class decorator.
import { Actor } from "tarant";
import { LocalStoragePersisted } from "tarant-local-storage";
export default class MyPersistedActor extends Actor {
...
}
LocalStoragePersisted("MyPersistedActor", MyPersistedActor) // NameOfThePersistedClass (unique), Class constructor
And then add the repository as a materializer and as a resolver:
import { ActorSystem, ActorSystemConfigurationBuilder } from 'tarant'
import MyPersistedActor from './actor';
import { LocalStoragePersisted, LocalStorageRepository } from 'tarant-local-storage';
window.onload = () => {
const repository = new LocalStorageRepository()
const system = ActorSystem.for(ActorSystemConfigurationBuilder.define()
.withMaterializers([repository])
.withResolvers([repository])
.done())
system.actorOf(MyPersistedActor)
}