React Redux Не удается прочитать свойство 'dispatch' из неопределенного - PullRequest
0 голосов
/ 25 февраля 2019

Я сделал некоторые обновления для пакетов моего приложения, такие как:

"react-redux": "^5.0.6" => "^6.0.1",
"redux": "^3.7.2" => "^4.0.1",
"redux-saga": "^0.16.0" => "^1.0.1"

, но я получаю сообщение об ошибке

Невозможно прочитать свойство 'dispatch' из неопределенного

Это мой index.js:

import React from 'react';
import ReactDOM from 'react-dom';
import { createStore, applyMiddleware } from 'redux';
import thunk from 'redux-thunk';
import createSagaMiddleware from 'redux-saga';
import { Provider } from 'react-redux';
import { Route } from 'react-router-dom';
import { ConnectedRouter, routerMiddleware } from 'react-router-redux';
import createHistory from 'history/createHashHistory';
import { writeSaga } from './sagas/writeSaga';
import { readSaga } from './sagas/readSaga';

import App from './App';
import reducers from './reducers';

const history = createHistory();
const sagaMiddleware = createSagaMiddleware();
const middlewares = [routerMiddleware(history), thunk, sagaMiddleware];
const store = createStore(reducers, applyMiddleware(...middlewares));

export default function*  rootSaga() {
  yield [
    writeSaga(),
    readSaga(),
  ]
};
sagaMiddleware.run(rootSaga);

ReactDOM.render(
  <Provider store={store}>
    <ConnectedRouter history={history}>
      <Route path="/" component={App} />
    </ConnectedRouter>
  </Provider>,
  document.getElementById('app-container')
);

Здесь я получаю сообщение об ошибке (response-router-redux ConnectedRouter.js): debugger

Любые предложения?

ОБНОВЛЕНИЕ 1 Добавляя / удаляя пакеты, я понял, что пакет, который вызывает эту проблему, является обновлением "response-redux" (5.0.6 => 6.0.1)

ОБНОВЛЕНИЕ 2 Наблюдая за серьезными изменениями реактив-редукса, я понял, что проблема заключается в том, как я прохожу магазин ( критические изменения ).

Я изменил свой код на:

ReactDOM.render(
  <Provider store={store}>
    <ConnectedRouter history={history} store={store}>
      <Route path="/" component={App} store={store} />
    </ConnectedRouter>
  </Provider>,
  document.getElementById('app-container')
);

И это работает!

Но я знаю, что это не правильный путь ... может быть, это может быть полезно для правильного решения.

Почему это не дубликат другого question : У меня такая же конфигурация для индексации, я проверил ее, и я уверен, что я использую response-router-redux.На каждой странице я экспортирую как

export default connect(mapDispatchToProps)(Home);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...