1、为了防止在组件中随意修改 状态值(store),引入了action
2、代码 ,在组件中只能调用store中特定的 方法来修改特定的值
//mobx.js
import{observable,action} from 'mobx'
var store = observable({ //对于对象类型数据的监听 观察
id:5,
name:'辞耳',
age:18,
changeage(){
this.age = 66
},
changename(){
this.name = '懵逼'
}
},{
changeage:action, //标记方法是action,专门用来修改可观测的value
changename:action
})
export default store;
//app.js
import React, { Component } from 'react'
import store from 'mobx'
export default class app extends Component {
componentDidMount(){
console.log(store.name) //辞耳
sutorun(()=>{
console.log(store.name) //辞耳 懵逼
})
store.changename()
}
render() {
return (
<div>app</div>
)
}
}