type
date
status
slug
summary
tags
category
icon
password
Parent item
Sub-item
多个组件之间要共享状态数据,useState就不够用了,useContext也不好用了
能够和react配合使用的状态管理库有
MobX
Redux
其中Redux API非常难以使用,这里选择了更加符合人类习惯的MobX,它虽然采用了面向对象的语法,但也能和函数式的代码很好地结合
安装
npm install mobx mobx-react-lite
类组件就npm install mobx mobx-react
原则
Mobx 使用单向数据流,利用 action 改变 state ,进而更新所有受影响的 view

- 所有的 derivations 将在 state 改变时自动且原子化地更新。因此不可能观察中间值。
- 所有的 derivations 默认将会同步更新,这意味着 action 可以在 state 改变 之后安全的直接获得 computed 值。
- computed value 的更新是惰性的,任何 computed value 在需要他们的副作用发生之前都是不激活的。
- 所有的 computed value 都应是纯函数,他们不应该修改 state。
文件src > store > StudentStore.ts
A7文件
别的同步组件A71
数据来自本地可以
但是远程接口拿的数据(新值来自远程)要runInAction
import (makeAutoobservable,runInAction) from 'mobx’
计算值用get
- 作者:NotionNext
- 链接:https://tangly1024.com/article/13471045-1c88-8098-b627-dbc56373d94b
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。



