探索 mobx-utils 和 mobx-state-tree
1. autorun() 日志及 mobx-utils 简介
autorun() 的日志如下,从中可以看到 submit() 和 reset() 对 viewModel.name 属性的影响:
ViewModel: <Unnamed>, Model: <Unnamed>, Dirty: false
ViewModel: Pavan, Model: <Unnamed>, Dirty: true
About to reset...
ViewModel: <Unnamed>, Model: <Unnamed>, Dirty: false
ViewModel: MobX, Model: <Unnamed>, Dirty: true
About to submit...
ViewModel: MobX, Model: MobX, Dirty: false
这里介绍的工具只是冰山一角,mobx-utils 提供了更多实用工具。强烈建议查看其 GitHub 项目(https://github.com/mobxjs/mobx-utils ),以发现更多实用函数。其中包括将 RxJS 流与 MobX 可观察对象进行转换的函数、在可观察数组追加元素时执行操作的处理器函数,以及具有超时自动处理功能的 MobX when() 变体等。
2. mobx-state-tree 概述
MobX 在组织状态、应用各种操作和反应方面非常灵活,但也留下了