Mobx
Mobx 是通过监听数据的属性变化,直接在数据上更改来触发 UI 的渲染。是不是一听就非常“Vue”。那 Mobx 的监听方式是什么呢?
- 在 Mobx 5 之前,实现监听的方式是采用 Object.defineProperty;
- 而在 Mobx 5 以后采用了 Proxy 方案。
action, makeObservable, observable, runInAction, toJS
makeAutoObservable 详解
makeAutoObservable(target, overrides?, options?)
target:将目标对象中的属性和方法设置为 Observable State 和 Actionoverrides:覆盖默认设置,将target对象中的某些属性或方法设置为普通属性- 因为并不是所有的属性或方法都需要转化
overrides对象中的key是需要覆盖的属性或方法的名称,value为false的会被设置成普通属性
options:配置对象
踩坑
- 在 store 初始化的时候,如果需要数据能够响应式绑定,需要在初始化的时候,给默认值,不能设置为 undefined 或者 null,这样子的话,数据是无法实现响应式的