如何解决此错误? 无法在“Connect(Home)”的上下文或道具中找到“store”。将根组件包装在一个或显式传递“store”作为“Connect(Home)”的支柱。
import React, { Component, PropTypes } from "react";
import { Router } from "react-native-router-flux";
import scenes from "../routes/scenes";
import { Provider } from "react-redux";
export default class AppContainer extends Component {
static propTypes = {
store: PropTypes.object.isRequired
}
render(){
return (
<Provider store={this.props.store}>
<Router scenes={scenes} />
</Provider>
);
}
}
来自商品:
import { createStore, applyMiddleware, compose } from "redux";
import thunk from "redux-thunk";
import makeRootReducer from "./reducers";
import { createLogger } from "redux-logger";
const log = createLogger({ diff: true, collapsed: true });
const store = createStore( makeRootReducer(), initialState, compose(applyMiddleware(...middleware), ...enhancers ));
return store;
};
答案 0 :(得分:1)
这是一个如何连接它的例子。
提供者类
./utils/setupStore
// Node Core Third party import { applyMiddleware, createStore } from 'redux'; import thunk from 'redux-thunk'; // App Modules import rootReducer from '../store'; //Your combine reducer file const middleware = applyMiddleware(thunk); export default function configureStore() { const store = createStore(rootReducer, middleware); //This is the createStore I was talking to you about. if (module.hot) { module.hot.accept(() => { const nextRootReducer = require('../store/index').default; store.replaceReducer(nextRootReducer); }) } return store; }
档案。
- images
-- image1.png
-- image2.png
-- thumbnails
--- thumb1.png
--- thumb2.png
- documents
-- test.pdf
答案 1 :(得分:0)
如果您使用的是react-router
,则需要遵循此顺序:
index.jsx -
import { Router, Route, IndexRoute, browserHistory } from 'react-router'
ReactDOM.render(
<Provider store={store}>
<div>
<Router history={browserHistory}>
<Route path="/" component={App}>
<Route path="foo" component={Foo}/>
<Route path="bar" component={App}/>
</Route>
</Router>
</div>
</Provider>,
document.getElementById('react-app')
)
package.json -
"react": "^0.14.7",
"react-dom": "^0.14.7",
"react-redux": "^4.3.0",
"react-router": "^2.0.0",
"redux": "^3.2.1",
"react-router-redux": "^4.0.0",
"webpack": "^1.9.8",
"webpack-bundle-tracker": "0.0.5",
"webpack-dev-server": "^1.16.5"