1.1.3 • Published 9 years ago

observ-store v1.1.3

Weekly downloads
2
License
MIT
Repository
github
Last release
9 years ago

observ-store Build Status

Observable data store for ordered application data

Install

$ npm install --save observ-store

Usage

var Store = require('observ-store')
var store = Store()

Store.update(store, [
  {id: 1, foo: 'bar'}
])

store.ids()
//=> [1]

store.data()
//=> {1: {id: 1, foo: 'bar'}}

API

Store([initial], [constructor]) -> function

initial

Type: object
Default: {}

Initial data ({data, ids}) to load into the observable store.

constructor

Type: function
Default: Observ

A function to use to construct new values added to data. Defaults to Observ, but you could use an ObservStruct.

Array Methods

The store constructor exposes the following array convenience methods:

  • map
  • filter
  • reduce
  • forEach
  • every
  • some

You can pass in an observable store or a copy (e.g. store or store()).

var store = Store()
Store.update([{id: 1}, {id: 2}])
Store.map(store, function (item, index) {
  return String(index) + String(item.id)
})
//=> ['01', '12']

These methods have the same signatures as the native methods. The first argument is always a store, followed by a callback and any other arguments the method accepts on a normal [] array.

License

MIT © Ben Drucker