javascript - 在 Redux 和 React Native 应用程序中访问商店

标签 javascript react-native redux

我开始开发一个将调用 API 的应用程序,该 API 需要包含我计划存储在 Redux 商店中的 JWT。

通常,您可以通过使用 mapStateToProps()connect() 将商店的特定部分映射到组件的状态来访问 Redux 商店,但是我喜欢在最终不会成为 React 组件/容器的文件中访问 Redux 存储 - 只是一个将处理 API 调用的纯 js 文件。

这可能吗?

最佳答案

您可以使用 createStore 返回的商店的 getState() 函数。您可以在从状态中获取所需数据的函数中使用它。

const myImportantData = () => store.getState().my.deep.data;

上面的版本直接使用存储,就像在全局变量中一样。这可以防止您在流程中使用多个商店。通常这是您想要的,但在服务器上运行时并非如此。也就是说,在服务器上您可能根本不需要 JWT 访问权限。

但是,如果您确实需要交换商店,那么您可以将其作为参数传递或通过 store 局部变量关闭:

const getDataGrabber = store => () => store.getState().my.deep.data;

关于javascript - 在 Redux 和 React Native 应用程序中访问商店,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40519505/

相关文章:

JavaScript超时重置机制

javascript - BackboneJS + Codeigniter - RESTful API - 如何创建一个大 API?

javascript - React Native 边框右/左颜色不起作用

javascript - 当使用 redux saga 和 React 时,状态如何在 sagas.js 中获取

reactjs - addEventListener 通过映射调度来 react redux

javascript - 打印数组中的键和值

javascript - 当模式/灯箱打开时如何滚动锁定主体

react-native - 列表项上的背景颜色不起作用?

android - React Native Android 中未指定 compileSdkVersion 错误

javascript - 从 props 打印值,该值通过 mapStateToProps 从 redux 传递到组件