首页 > 解决方案 > 在 4.0.0 版本中无法调用 getState

问题描述

我已将我的商店定义如下(文件 store.js):

import { createStore } from 'redux';
import { persistStore, persistReducer } from 'redux-persist';
import AsyncStorage from 'react-native';

import rootReducer from './reducers';

const persistConfig = {
  key: 'root',
  storage: AsyncStorage,
}

const persistedReducer = persistReducer(persistConfig, rootReducer)
let store = createStore(persistedReducer);
let persistor = persistStore(store);
export default {store, persistor};

我在其他地方使用这家商店。

import {store} from './store';
const mykey = store.getState().mykey ;

图像错误

它有问题,但在 3.7.2 版本中运行良好。我阅读了 4.0.0 版的文档,其中描述了:

如果在调度时调用 getState、subscribe 或 unsubscribe,则抛出。

如何在其他地方获得商店的价值?

标签: react-nativereduxreact-redux

解决方案


store.getState()减速器禁止调用。更多细节在这里。从动作创建者那里, getState 应该可以工作。


推荐阅读