reactjs - 当 mobx observable 改变时触发函数
问题描述
我目前正在尝试创建一个函数,当我的商店中的可观察对象发生更改时(我正在使用 mobx),该函数应该在我的反应组件中触发。
这是我的商店 =>
class myStore{
@observable myVariable
}
这是我的反应组件 =>
@observer
export default class MyComponent etends React.component {
render(){
//rendering stuff here
}
someFunctionTriggeredByObservableChanged(){ // maybe a intercept or observe from mobx ?
}
}
我想知道我是否可以直接在我的反应组件中使用可能从 mobx 拦截或观察?
谢谢,
解决方案
您正在寻找reaction
@inject('store')
@observer
export default class MyComponent etends React.component {
componentDidMount() {
reaction(
() => this.props.store.myVariable,
() => {
console.log('reaction');
// do your stuff
}
)
}
...
}
推荐阅读
- python - python: nan_policy=omit 对 scipy.stat.spearmanr 有什么作用
- ldap - Symfony4 对 ldap 服务器进行身份验证并从数据库中获取用户信息
- jquery - DataTables 在本地工作,托管时出现 404 和 Ajax 错误
- python - Tkinter 比例小部件未实时更新
- python - 从 URL 中带有“#”的网站抓取数据时出错
- javascript - TypeError:在非对象 JQUERY 上调用 Object.defineProperty
- javascript - 将 JS 对象附加到 DOM
- java - 如何在 Spring JUnit 测试中的休眠自动生成之前初始化数据库?
- python - Keras CNN-RNN 不会训练。可以使用一些调试
- powershell - powershell 命令中的等效 /s /V"/qn