【发布时间】:2018-01-18 12:48:37
【问题描述】:
试图让 react-router-dom 和 react-redux 玩得很好,但在浏览器控制台中出现以下错误:
警告:React.createElement:类型无效 - 应为字符串(用于内置组件)或类/函数(用于复合组件)但得到:未定义。您可能忘记从定义组件的文件中导出组件。
index.js
import React from 'react';
import ReactDom from 'react-dom';
import Provider from 'react-redux';
import { createStore } from 'redux';
import reducer from './src/reducers/Index';
import Root from './src/views/Root';
let store = createStore(reducer)
ReactDom.render(
<Provider store={store}>
<Root />
</Provider>,
document.getElementById('content')
);
reducer (Index.js)
import {combineReducers} from 'redux';
import Login from './Login';
export default combineReducers({
Login
})
reducer (Login.js)
export default function login(state = 'Login', action) {
switch (action.type) {
case 'LOGINLOADING':
return state + 1
case 'LOGINLOADED':
return state - 1
default:
return state
}
}
Root.js
import React from 'react';
import BrowserRouter from 'react-router-dom';
import App from './App';
class Root extends React.Component {
render(){
return (
<BrowserRouter>
<App />
</BrowserRouter>
);
}
}
export default Root;
App.js
import React from 'react';
class App extends React.Component {
render(){
return (
<div>
<p> Hello Kitty </p>
</div>
);
}
}
export default App;
【问题讨论】:
标签: reactjs react-router react-redux