私は似たような質問をたくさん読みました,そして誰も私に合いませんでした.
約
this.props.children は常に親からコンテキストを継承するとは限りません
コンテキストまたは小道具のいずれかで「ストア」が見つかりませんでした
//store config
const createHistoryWithBasename = (historyOptions) => {
return useBasename(createHistory)({
basename: '/user_home'
})
}
const finalCreateStore = compose(
applyMiddleware(thunk, createLogger()),
reduxReactRouter({
createHistory: createHistoryWithBasename }),
devTools()
)(createStore);
export function configureStore(initialState) {
const store = finalCreateStore(rootReducer, initialState);
return store;
}
インデックス ファイル、プロバイダーにネストされたすべてのルート。
//entry file
let routes = (
<Route path="/" component={UserHome}></Route>
);
ReactDom.render(
<Provider store={store} >
<ReduxRouter>
{routes}
</ReduxRouter>
</Provider>,
rootElement
);
コンポーネント。this.propsをログに記録しましたが、dispatchプロパティはありません。また、 contextのパラメーターは空のオブジェクトです。
//user_home.js
class UserHome extends React.Component {
constructor(props, context){
//context is empty Object
super(props, context);
}
render() {
//this.props.dispatch is undefined
return (
<div className="container">
test
</div>
);
}
}
function mapStateToProps(state){
return state;
}
export default connect(mapStateToProps, {
pushState
})(UserHome);
単純な質問かもしれませんが、かなり時間がかかりました。ありがとうございました!