javascript 如何访问组件外部的react-redux存储

nkhmeac6  于 2023-04-19  发布在  Java
关注(0)|答案(4)|浏览(123)

我有一个文件,它导出了各种实用程序函数以跨组件使用,而这些函数需要访问redux状态。我如何将状态对象导入到这个文件中?

m4pnthwp

m4pnthwp1#

如果你的实用函数不是react元素,那么connect在这里不起作用。
最好的办法是,导入创建存储,然后使用getState函数,

import store from 'store/createStore';
const state = store.getState();
xytpbqjk

xytpbqjk2#

好吧,这不是一个简单的答案,但是在研究了很长时间之后,我发现了这些,这是仅有的两篇解释任何事情的文章。(如果必须的话),同时也要提到纯函数/函数式编程哲学,以及将一堆非组件函数直接连接到存储的潜在性能问题。我使用@anoop,并根据需要在单个对象中传递参数。
对于直接连接(它以connect()的方式从this.context获取商店),请参阅讨论here,特别是gaearon在2015年9月16日和2015年9月22日的评论。似乎可以通过connect()实现此访问。
有关函数式编程/纯函数的一些阅读,请参阅讨论here

piv4azn7

piv4azn73#

该实用程序应将状态作为参数获取。
因为你想在组件(视图)中使用这个工具,你可以通过mapStateToProps(state)回调将状态存储在你的 * 智能组件 *(使用connect()函数的组件)的成员变量中。然后你可以将这个成员传递给你的 * 哑组件 *。

guz6ccqo

guz6ccqo4#

你好,这篇文章晚了,请看看我下面的代码。谢谢

import { store } from "../../../redux/store";
// getting data from redux
const state = store.getState();
//i am fetching estimator data
const data = state.valuemodel.estimatorData;

相关问题