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
 

/mobx-init-on-demand/

    Package Sidebar

    Install

    npm i mobx-init-on-demand

    Weekly Downloads

    1

    Version

    0.0.7

    License

    MIT

    Unpacked Size

    28.6 kB

    Total Files

    13

    Last publish

    Collaborators

    • adjective