Redux и Sagas: не удается правильно подключиться - PullRequest
0 голосов
/ 17 июня 2020

У меня есть проект, в котором используются Saga и Redux Store, это метод начальной загрузки проекта:

import { createStore, applyMiddleware } from 'redux';
import { Provider } from 'react-redux';
import { fork } from 'redux-saga/effects';

...

const bootstrap = async () => {
    const configuration = await config.env();
    init(configuration);

    const rootReducer = combineReducers({
        ...reducers,
    })

    function* rootSaga() {
        yield sagas.map(saga => fork(saga))
    }

    const sagaMiddleware = createSagaMiddleware();
    const store = createStore(rootReducer, applyMiddleware(sagaMiddleware));

    const App = (): Element<*> => (
        <Provider store={store}>
            <div>
                <WorstProjectInMyLife />
            </div>
        </Provider>
    );

    sagaMiddleware.run(rootSaga);

    ReactDOM.render(<App />, document.getElementById('app'));
};

bootstrap();

И здесь мы отправляем состояние в реквизиты:

import { createSelector } from 'reselect';

const selectIsFetching = createSelector(
    parentSelector,
    (parentState: StateRecord = new StateRecord()) => parentState.isFetching
);

const mapStateToProps = (state: StateType) => ({
    isFetching: selectIsFetching(state)
});

const mapDispatchToProps = {
    ...actions
};

export default connect(mapStateToProps, mapDispatchToProps)(WorstProjectInMyLife);

Но магазин всегда пуст, поэтому боюсь, что он подключен неправильно. Не могли бы вы взглянуть, ребята, может я что-то пропустил? Я действительно борюсь с этим уже несколько дней и схожу с ума, потому что понятия не имею, почему это не сработает. Спасибо за любую помощь

1 Ответ

0 голосов
/ 17 июня 2020

Я попытался создать простой сценарий, похожий на ваш, и, похоже, он работает. Не могли бы вы предоставить еще немного контекста и кода? Сначала все состояние приложения не определено? (помните, что вы не определяете состояние по умолчанию) Правильно ли работает родительский селектор?

...