Next Perpendicular Moonlanding
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

ember-lokijs

0.2.4 • Public • Published

npm version Build Status

ember-lokijs

LokiJS is a highly performant localStorage/sessionStorage/indexedDB interface. This addon wraps Loki and also provides an extensible adapter and serializer so you can easily use it with Ember Data models.

Installation

ember install ember-lokijs

Usage

First, add the LokiJSModelMixin to your model:

// models/foo.js
import DS from 'ember-data';
import { LokiJSModelMixin } from 'ember-lokijs';
 
export default DS.Model.extend(LokiJSModelMixin, {
});

Next, extend a LokiJSAdapter for your model:

// adapters/foos.js
import { LokiJSAdapter } from 'ember-lokijs';
 
export default LokiJSAdapter;

Finally, extend a LokiJSSerializer for your model:

// serializer/foos.js
import { LokiJSSerializer } from 'ember-lokijs';
 
export default LokiJSSerializer;

And that's it!

indices

If you want a particular query to be faster, you can index its attributes in your adapter:

// adapters/user.js
import { LokiJSAdapter } from 'ember-lokijs';
 
export default LokiJSAdapter.extend({
  indices: ['username', 'email']
});

databaseName

By default, the adapter will place all models in the same database named ember-lokijs. If you wish to place them in separate databases, simply provide your adapters with unique databaseName:

// adapters/user.js
import { LokiJSAdapter } from 'ember-lokijs';
 
export default LokiJSAdapter.extend({
  databaseName: 'user-db'
});

lokiOptions

If you want to pass in options to the lokijs constructor, you can specify them:

// adapters/user.js
import { LokiJSAdapter } from 'ember-lokijs';
 
export default LokiJSAdapter.extend({
  lokiOptions: {
    adapter: new LokiIndexedAdapter(),
    autosave: true
  }
});

Keywords

install

npm i ember-lokijs

Downloadsweekly downloads

2

version

0.2.4

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar