Getting Started
#
Installing Offix DataStoreUsing npm:
Or yarn:
#
Using DataStore#
Building your own GraphQL typeLet's use the following sample schema for our app
#
Configuring DatastoreWe have a cli tool that generates DataStore config and Model JSON schema given a GraphQL schema.
#
Datastore ModelsTo be able to store user tasks in the DataStore, you need to create it's DataStore model.
The DataStore model provides the API to perform CRUD operations on Task
in the DataStore.
The cli tool generates code to configure each model defined in your graphql schema.
Here we will assume that you generated the DataStore config files in src/datastore/generated
.
Instantiate the TaskModel
with the Task
interface and json schema.
info
Once the DataStore
has been configured we need to start replication manually.
#
Schema UpgradesThe DataStore creates a table on the device for each model. When you push a new version of your app with models added, replaced or removed, the tables for the new models won't be created on the client device and the unused tables(for removed models) won't be deleted.
To make the DataStore acknowledge these changes, you need to increment the schema version.
Using our sample app, suppose we add a SubTask
model, we need to increment
the schema version to trigger the creation of the "user_SubTask" table on the client device.
The DataStore
constructor takes a schema version parameter (defaults to 1).