React Native TypeError store.getState不是一个函数

Wes*_*rra 1 javascript react-native redux-saga react-redux

大家好,我正在尝试使我的代码更具可读性和实用性。

在React Native中使用redux-saga我遇到了一些问题。

当我尝试加载应用程序时,出现错误:

TypeError:store.getState不是函数

该错误位于:

in Connect(Reprov) (at App.js:17)
in RCTView (at View.js:44)
in Provider (at App.js:14)
in App (at renderApplication.js:34)
in RCTView (at View.js:44)
in RCTView (at View.js:44)
in AppContainer (at renderApplication.js:33)
Run Code Online (Sandbox Code Playgroud)

src / store / configureStore.js


import {createStore, applyMiddleware} from 'redux'
import createSagaMiddleware from 'redux-saga';
import rootReducer from '../reducers';
import rootSaga from '../sagas';

export default function () {
  const sagaMiddleware = createSagaMiddleware();
  const store = createStore(
    rootReducer,
    applyMiddleware(sagaMiddleware)
  );

  sagaMiddleware.run(rootSaga)

  return store;
}
Run Code Online (Sandbox Code Playgroud)

src / App.js

import React, {Component} from 'react'
import { View } from 'react-native';
import { Provider } from 'react-redux';
import AppNavigation from './Navigation';
import store from './store/configureStore';
import Reproof from './screens/Reprov';
import Approval from './screens/Aprov';
import PushNotificationController from './components/Push';

class App extends Component {
  render() {
    return (
      <Provider store={store}>
        <View style={{ flex: 1 }}>
          <AppNavigation />
          <Reproof />
          <Approval />
          <PushNotificationController />
        </View>
      </Provider>
    )
  }
}

export default App;
Run Code Online (Sandbox Code Playgroud)

我不知道我在做什么错...

LHI*_*OUI 7

您正在将商店作为变量导入,并且在文件中,它是一个函数:

import store from './store/configureStore';

尝试这个 :

import configureStore from './store/configureStore';
Run Code Online (Sandbox Code Playgroud)

然后创建一个变量存储

const store = configureStore();
Run Code Online (Sandbox Code Playgroud)