0
React-Router noob在這裏,試圖找到我的方式與一個簡單的構建。請多多包涵。被忽略的路由兒童
我有一個應用程序,包含三個組件:標題,側欄和索引。
在瀏覽器中,標題和邊欄呈現正常,但索引組件不,我不知道爲什麼。控制檯拋出這樣的警告:
Warning: You should not use <Route component> and <Route children> in the same route;
<Route children> will be ignored
這只是一個警告,但它告訴我,它忽略了孩子和我認爲這就是它打破。然後再次,我知道什麼?我對這一切都很陌生。
這是我的根組件。
import React, { Component } from 'react';
import { Router, Route, IndexRoute } from 'react-router';
import Index from './components/Index';
import App from './components/App';
class Root extends Component {
render() {
return (
<Router history={this.props.history}>
<Route path='/' component={App}>
<IndexRoute component={Index}/>
</Route>
</Router>
);
}
}
export default Root;
這裏的指數成份
import React, { Component } from 'react';
class IndexComponent extends Component {
constructor() {
super();
}
render() {
return (
<h2>Click on a contact to view their profile</h2>
);
}
}
export default IndexComponent;
...和我的應用程序組件(其中this.props.children返回undefined)
import 'normalize.css/normalize.css';
import 'bootstrap/dist/css/bootstrap.min.css';
import React, { Component } from 'react';
import Header from './Header';
import Sidebar from './Sidebar';
import { Grid, Row, Col } from 'react-bootstrap';
class AppComponent extends Component {
componentWillMount() {
this.lock = new Auth0Lock('XXXXXXXXXXXX', 'XXXXXX.auth0.com');
}
render() {
return (
<div>
<Header lock={this.lock}></Header>
<Grid>
<Row>
<Col xs={12} md={3}>
<Sidebar />
</Col>
<Col xs={12} md={9}>
{this.props.children}
</Col>
</Row>
</Grid>
</div>
);
}
}
export default AppComponent;
您正在使用哪個'react-router'版本。 https://stackoverflow.com/questions/44452858/specify-child-routes-in-react-router-v4 –
我正在使用4.1.2 –
請參考我上面分享的鏈接。在react-router v4中,我們沒有IndexRoute。 –