还在找react例子? 记录一下react练习小心得
react+reudx+router+material-ui+es6、7初学者用来做练习很不错,因为我就是。
创建仓库通过create-react-app创建初始环境, 安装material UI库, 按照material官网描述修改webpack配置按需加载。详细参照material-ui
1、在src 文件下新建components文件夹在当前文件夹下面编写组件。
/* src/touter/router.config.js */ import Main from '../components/Main'; import Search from '../components/Search'; import About from '../components/About'; import BookIntro from '../components/BookIntro'; import Read from '../components/Read'; import ChangeOrigin from '../components/ChangeOrigin'; const routes = [ { path: '/search',component: Search,exact: true,},{ path: '/about',component: About,{ path: '/bookIntro',component: BookIntro,{ path: '/read/:id',component: Read },{ path: '/changeOrigin',component: ChangeOrigin,{ component: Main } ]; export default routes; /*src/router/Router.js*/ /** * Created by fydor on 2017/5/5. */ import React from 'react'; import { BrowserRouter as Router,Route,Switch,} from 'react-router-dom'; import routes from './router.config'; const Routers = () => ( <Router> <Switch> { routes.map((route,i)=> ( <Route key={i} path={route.path} exact={route.exact} component={route.component}/> )) } </Switch> </Router> ); export default Routers; 这样配置可以直接在配置文件中添加路由,由于只有一层路由所以对象中没有继续嵌套routes(嵌套的意思是在当前显示的组件下面还有需要通过url匹配显示的组件)路由嵌套可以参照 目前位置目录结构如下 . ├── App.js ├── App.test.js ├── components │ ├── About.js //用来显示关于页面 │ ├── BookIntro.js //介绍 │ ├── ChangeOrigin.js //换源 │ ├── Main.js //主页显示关注的图书 │ ├── Read.js //阅读界面 │ └── Search.js //搜索页 ├── index.js //渲染页面 ├── redux │ ├── action.js │ └── reducer.js ├── router │ ├── Routers.js │ └── router.config.js ├── source └── styles 在create-react-app 中通过
|