2017-05-31 81 views
1

我正在使用MobX存储来将某些用户身份验证数据保存为可观察数据。我想访问一些我想在组件注入/观察者模式之外运行的函数的一些数据。这是明智的做法吗?访问React组件外部的MobX状态?

例如一个authenication功能如此:

​​
+0

没有更多的建筑信息来自你 - 我会说这将是有意义的数据将被传递到您的帮助由谁调用它的功能。 – pscl

回答

0

我同意user1628461,但如果你的应用程序的增长,可能会造成问题反复通店作为参数。

您拥有的可能性是首先初始化您的商店,然后在初始化帮助程序类时将其作为参数传递。 这样,您可以保存对商店及其可观察对象的引用,并在需要时访问它。见例如:

App.jsx

import Store from './store.jsx' 
import Helper from './helper.jsx' 

const myStore = new Store(); 
const myHelper = new Helper(myStore); 

myHelper.doSomething(); 

helper.jsx

export default class Helper { 

    constructor(store){ 
    this.store = store; 
    } 

    doSomething() { 
    // do something with the store 
    this.store.useAction(); 
    this.store.anObservable = 'modified'; 
    } 
}