mobx 小结

1.@observable 是一种让数据的变化可以被观察的方法

//@observable data 注册一个数据,这个数据将会成为一个可mobx监测的数据

2.decorator 修饰器只能修饰 类 或 类成员

3.对可观察的数据做出反应

@computed 计算 -- 对引入的可观察数据进行处理,返回新的可观察数据(可以将多个可观察数据组合成一个可观察数据)

@computed get XXX (){
    return AAA
}

//computed 是自动监测已注册的数据,如果已注册的数据有改变自动执行这个函数

不可循环引用

@autorun 自动运行 -- 修改autorun引用的可观察数据,导致autorun 自动运行(首次加载会自动运行,自动追踪可观察数据)

@when 接收两个函数参数,第一个函数根据引入的可观察数据返回一个布尔值,当布尔值为 true 的时候,则执行第二个函数(when 提供了条件执行逻辑)

@reaction 接收两个函数参数,第一个函数根据可观察函数,数据变化后,返回一个新的值,该值作为第二个函数的参数

4.修改可观察数据

@action 只执行一次

@action.bound toggle() {}

//注册action ,action里面可以改变mobx注册的数据,从而改变store里的数据

5.@observer 修饰react组件类
import { inject, observer } from 'mobx-react';

真正用到可观察数据的组件才会被 observer 修饰

6.mobx 自带的 remove 不需要传入id

7.mobx -- observe spy() toJS() trace()在父组件中调用

observe 组件及组件成员发生变化

spy 监控所有的情况的变化

toJS 将可观察数据,转化成普通数据

trace(true) 多用于debug调试

8.@inject 注入需要的store

原文地址:https://www.cnblogs.com/crazycode2/p/9466467.html