mobx-init-on-demand
TypeScript icon, indicating that this package has built-in type declarations

0.0.7 • Public • Published

mobx-init-on-demand

npm, github

Initialize large mobx objects on read, instead of on creation. For extremely large objects, this defers the performance cost of wrapping objects in mobx containers until they are actually needed.

Usage

yarn add mobx-init-on-demand

import { observableOnDemand } from 'mobx-init-on-demand';
 
const myObservable = observableOnDemand({
    ... // your large object here
})
 
// use the observable as normal
autorun(() => {
  console.log(myObservable.some.deep.nested.prop)
})

Development

yarn # install dependencies 
yarn build # build.             Can also use `rollup -c` 
yarn watch # build with watch.  Can also use `rollup -cw` 
yarn jest # run tests 

run an integration test against an open-source repo. see ./integration-test for more details.

REPO="https://github.com/microsoft/satcheljs.git" ./integration-test/scripts/run-mobx-test.sh yarn jest
 
# or for testing failing tests 
 
REPO="https://github.com/microsoft/satcheljs.git" ./integration-test/scripts/run-mobx-test.sh yarn jest --watch
 

Readme

Keywords

none

Package Sidebar

Install

npm i mobx-init-on-demand

Weekly Downloads

0

Version

0.0.7

License

MIT

Unpacked Size

28.6 kB

Total Files

13

Last publish

Collaborators

  • adjective