mobx-web-cell
Version:
MobX adaptor for WebCell v2
75 lines (52 loc) • 1.37 kB
Markdown
[][1] adaptor for [WebCell v2][2]
[][3]
[][4]
```shell
npm install web-cell mobx@5 mobx-web-cell
```
`source/model/index.ts`
```typescript
import { observable, action } from 'mobx';
class App {
@observable
count = 0;
@action
increase() {
this.count++;
}
}
export const app = new App();
```
`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>;
});
```
`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>;
}
}
```
[]: https://mobx.js.org
[]: https://web-cell.dev/
[]: https://www.jsdelivr.com/package/npm/mobx-web-cell
[]: https://nodei.co/npm/mobx-web-cell/