Недавно попытался добавить избыточность в одно из приложений. Одно из решений — завернуть корневой компонент в Provider. Сделал это, но все еще вижу проблему ниже (в браузере). [Вставлен только потенциально релевантный код из файлов].
Неперехваченная ошибка: не удалось найти «магазин» ни в контексте, ни в реквизитах «Подключиться (галерея)». Либо оберните корневой компонент в файл , либо явно передайте «store» в качестве реквизита «Connect (Gallery)».
клиент/main.js
document.addEventListener('DOMContentLoaded', function() {
ReactDOM.render(
<Provider store={store}>
<App/>
</Provider>,
document.getElementById('mount')
);
});
общий/приложение/js
class App extends React.Component {
render() {
return (
<BrowserRouter history={ browserHistory }>
<div>
<Route exact path="/" component={Gallery} />
<Route path="/viewitem/:id" component={ViewItem} />
</div>
</BrowserRouter>
);
}
}
общий/редукс/index.js
export const reducers = combineReducers({
images: imageReducer,
});
export function configureStore(initialState = {}) {
const store = createStore(
reducers,
initialState,
applyMiddleware(...middleWare)
)
return store;
};
export const store = configureStore();
Может ли быть так, что BrowserRouter не работает с редуксом?