如何解决react-redux项目错误屏幕快照中的此错误 警告:道具类型失败:该道具store在中标记为必需Provider,但其值为undefined。在提供者中
store
Provider
undefined
import React from 'react'; import ReactDOM from 'react-dom'; import App from './App'; import './index.css'; import SignUp from './Components/SignUp' import SignIn from './Components/SignIn' import Home from './Components/Home' import { Router, Route, hashHistory, IndexRoute, browserHistory } from 'react-router'; import MuiThemeProvider from 'material-ui/styles/MuiThemeProvider'; import {firebaseApp} from './Database/firebaseApp' import {Provider} from 'react-redux' import {store} from './Store/Store' import {logUser} from './Store/Actions' ReactDOM.render( <MuiThemeProvider> <Provider store={store}> <Router history={browserHistory} > <Route path="/signup" component={SignUp} ></Route> <Route path="/signin" component={SignIn} ></Route> <Route path="/home" component={Home} ></Route> </Router> </Provider> </MuiThemeProvider> , document.getElementById('root') );
//在下面存储代码
import { createStore, applyMiddleware,combineReducers } from 'redux'; import thunk from 'redux-thunk'; import {createLogger} from "redux-logger"; //import logger from 'redux-logger' //import rootReducer from './Reducers/rootReducer' import {authReducer} from "./Reducers/authReducer" const rootReducer = combineReducers({ authReducer }) const logger = createLogger(); let store = createStore(rootReducer, applyMiddleware(thunk, logger) ); export default store;
您store默认导出:export default store;
export default store;
您需要通过以下方式导入它: import store from './Store/Store'
import store from './Store/Store'
有两种出口:
export myVar
{
}
export default myVar
这对于从文件导出/导入多个变量/函数很有用:
// file.js export a; export b; export default c; //otherfile.js import c, { a , b} from './file';