首页layout设计, <NavTop />组件是顶部,<NavSide /是侧边栏
-
import React from 'react';
-
-
import NavTop from 'component/nav-top/index.jsx';
-
import NavSide from 'component/nav-side/index.jsx';
-
-
import './theme.css';
-
import './index.scss';
-
class Layout extends React.Component{
-
constructor(props){
-
super(props);
-
}
-
render(){
-
return(
-
<div id="wrapper">
-
<NavTop />
-
<NavSide />
-
{this.props.children}
-
</div>
-
)
-
}
-
}
-
-
export default Layout;
this.props.children的数据来自组件子节点的数据,默认是访问的Home组件里边的数据,显示Home页
-
import React from 'react';
-
import ReactDOM from 'react-dom';
-
import { BrowserRouter as Router, Switch, Redirect, Route, Link显示home } from 'react-router-dom';
-
// 页面
-
import Home from 'page/home/index.jsx';
-
import Login from 'page/login/index.jsx';
-
import ProductRouter from 'page/product/router.jsx';
-
import Layout from 'component/layout/index.jsx';
-
import OrderList from 'page/order/index.jsx';
-
import OrderDetail from 'page/order/detail.jsx';
-
import UserList from 'page/user/index.jsx';
-
class App extends React.Component{
-
render(){
-
let LayoutRouter = (
-
<Layout>
-
<Switch>
-
<Route exact path="/" component={Home}/>
-
<Route path="/product" component={ProductRouter}/>
-
<Route path="/product-category" component={ProductRouter}/>
-
<Route path="/order/index" component={OrderList}/>
-
<Route path="/order/detail/:orderNumber" component={OrderDetail}/>
-
<Route path="/user/index" component={UserList}/>
-
<Redirect exact from="/order" to="/order/index"/>
-
<Redirect exact from="/user" to="/user/index"/>
-
</Switch>
-
</Layout>
-
);
-
return (
-
<Router>
-
<Switch>
-
<Route path="/login" component={Login}/>
-
<Route path="/" render={ props => LayoutRouter}/>
-
</Switch>
-
</Router>
-
)
-
}
-
}
-
-
-
ReactDOM.render(
-
<App />,
-
document.getElementById('app')
-
);