私はReact + Redux + Expressを使用しています。私がlocalhost/courses
をリロードするたびに、私は '店'を見つけられないというエラーが出た。しかし、もし私がlocalhost -> click to nav course
から行くと、すべて正常に動作しています。どうすれば修正できますか?React-reduxが店舗を見つけることができませんでした
エラー
不変違反:コンテキストまたは "接続(コース)" の 小道具のいずれかで "ストア" を見つけることができませんでした。 プロバイダーにルートコンポーネントをラップするか、明示的に「ストア」を「接続(コース)」の小道具として渡します。
store.js
const middleware = applyMiddleware(promise(), thunk, logger());
export default createStore(reducer, middleware);
App.js
window.onload =() => {
ReactDOM.render(
<Provider store={store}>
<Router history={browserHistory} routes={routes} onUpdate={() => window.scrollTo(0, 0)}/>
</Provider>
, document.getElementById('main'));
};
routes.js
const routes = (
<Route path='/' component={Layout}>
<IndexRoute component={Home}/>
<Route path='courses' data={data} component={Course}>
</Route>
);
export default routes;
Course.js
class Course extends React.Component {
static contextTypes = {
router: React.PropTypes.object,
};
componentWillMount() {
this.props.dispatch(fetchVocabulary());
};
render() {
console.log(this.props.words);
return (
<div>
...
</div>
);
};
}
export default connect((store) => {
return {
words: store.vocabulary.words
};
})(Course);
package.json
"react": "^15.4.1",
"react-dom": "^15.4.1",
"react-hot-loader": "^1.3.1",
"react-redux": "^5.0.1",
"react-router": "^3.0.0",
"redux": "^3.6.0",
"redux-logger": "^2.7.4",
"redux-promise-middleware": "^4.2.0",
"redux-thunk": "^2.1.0",
こんにちは、店に初めて初めて接続することはできますか?私はナビ/コースをクリックするたびにapiの応答に気づきます。 Thx –
私はそれを前に試したことがないのですが、その答えはありません –
もう1つ質問:私がlocalhost/courseに行くと、最初にページが404を返し、その後正常に戻ります。自分のコンソールネットワークを確認しました。ステータスは404です。この問題はこれまでに発生しましたか? –