从静态函数达到redux状态

Pum*_*eed 5 react-native redux

我有一个React Native应用程序,其中有一个名为Helpers的类。这些是一组与应用程序相关的静态帮助器功能。通常,我称他们为Helpers.functionName()。从这种静态方法访问redux存储的最佳方法是什么?我想对其进行修改并阅读。

我有这样的助手:

class Helpers extends Component {
  static getState(){
    return state;
  }
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用connect,但是在getState函数内部,this.props是未定义的。

Dav*_*jan 3

一种方法是将 store 作为参数传递给每个需要它的静态函数。或者您可以创建存储全局变量并这样访问它。

但我会犹豫是否将这些方式描述为最好的,或者使用任何其他积极的形容词来解决这个问题。Redux 可以以多种方式使用,但我认为其目的是阻止全局存储访问。

另请注意,直接从辅助函数更改存储是另一个层面的禁忌。redux 的目的是只有reducer 函数会改变状态以响应分派的操作。

最后,助手真的是您正在使用的组件,还是只是一堆静态函数的容器?如果晚了,那么从 Component 派生它可能会产生误导。