UNPKG

mobx-web-cell

Version:
75 lines (52 loc) 1.37 kB
# MobX WebCell [MobX][1] adaptor for [WebCell v2][2] [![](https://data.jsdelivr.com/v1/package/npm/mobx-web-cell/badge?style=rounded)][3] [![NPM](https://nodei.co/npm/mobx-web-cell.png?downloads=true&downloadRank=true&stars=true)][4] ## Installation ```shell npm install web-cell mobx@5 mobx-web-cell ``` ## Usage `source/model/index.ts` ```typescript import { observable, action } from 'mobx'; class App { @observable count = 0; @action increase() { this.count++; } } export const app = new App(); ``` ### Function Component `source/page/index.ts` ```jsx import { createCell } from 'web-cell'; import { observer } from 'mobx-web-cell'; import { app } from '../model'; export default observer(function PageIndex() { return <div onClick={app.increase}>count: {app.count}</div>; }); ``` ### Class Component `source/page/index.ts` ```jsx import { createCell, component, mixin } from 'web-cell'; import { observer } from 'mobx-web-cell'; import { app } from '../model'; @observer @component({ tagName: 'page-index' }) export default class PageIndex extends mixin() { render() { return <div onClick={app.increase}>count: {app.count}</div>; } } ``` [1]: https://mobx.js.org [2]: https://web-cell.dev/ [3]: https://www.jsdelivr.com/package/npm/mobx-web-cell [4]: https://nodei.co/npm/mobx-web-cell/