【问题标题】:trigger function when mobx observable is changed当 mobx observable 改变时触发函数
【发布时间】:2019-03-05 18:31:46
【问题描述】:

我目前正在尝试创建一个函数,当我的商店中的可观察对象发生更改时(我正在使用 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 拦截或观察?

谢谢,

【问题讨论】:

    标签: reactjs observable mobx


    【解决方案1】:

    您正在寻找reaction

    @inject('store')
    @observer
    export default class MyComponent etends React.component {
    
      componentDidMount() {
        reaction(
          () => this.props.store.myVariable,
          () => {
            console.log('reaction');
            // do your stuff
          }
        )
      }
    
      ...
    }
    

    MobX Reaction Doc

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-01-29
      • 1970-01-01
      • 1970-01-01
      • 2018-05-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多