博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
React项目搭建
阅读量:5960 次
发布时间:2019-06-19

本文共 2672 字,大约阅读时间需要 8 分钟。

环境搭建

推荐使用npm搭建项目环境,如果网速过慢,可是使用cnpm进行项目的搭建(cnpm是淘宝的npm镜像,与npm有些差异,有些模块无法下载或无法正常使用)。

cnpm install -g create-react-appcreate-react-app my-appcd my-appnpm start复制代码

打开浏览器,输入http://localhost:3000可以看到系统默认生成的页面了。

注:node版本最好8.0版本以上

目录结构

路由配置

index.js

import React from 'react'import ReactDOM from 'react-dom'import './index.css'import { BrowserRouter } from 'react-router-dom'import Root from './router/Router'import * as serviceWorker from './serviceWorker'const mountNode = document.getElementById('root')ReactDOM.render(  
, mountNode)// If you want your app to work offline and load faster, you can change// unregister() to register() below. Note this comes with some pitfalls.// Learn more about service workers: http://bit.ly/CRA-PWAserviceWorker.unregister()复制代码

app.js

/*   App 应用总容器*/import React, { Component } from 'react'class App extends Component {  render() {    return 
{this.props.children}
}}export default App复制代码

Router.js

/*   Root, Router 配置*/import React from 'react'import { Route, Switch, Redirect } from 'react-router-dom'import App from './../App'import Test from './../containers/Test'import Home from './../containers/Home'import Message from './../containers/Message'const Root = () => (  
(
{/*路由不正确时,默认跳回home页面*/}
} />
)} />
)export default Root复制代码

containers中的三个文件

/*   Home 主页*/import React, { Component } from 'react'import { Link } from 'react-router-dom'class Home extends Component {  render() {    return (      
{/*search,state可以自定义,获取方法:this.props.location.search,this.props.location.state*/}
点击跳转到路由参数search,state使用
) }}export default Home/* Message 主页*/import React, { Component } from 'react'class Message extends Component { // constructor(props) { // super(props) // } render() { return

Message{this.props.match.params.id}

}}export default Message/* Test 主页*/import React, { Component } from 'react'import { Link } from 'react-router-dom'class Test extends Component { // constructor(props) { // super(props) // } render() { return (

search:{this.props.location.search}

state:{this.props.location.state.mold}

this.props.history.goBack()}>返回上一页
message页面1
this.props.history.push('/message/12')}> message页面2
) }}export default Test复制代码

转载地址:http://bguax.baihongyu.com/

你可能感兴趣的文章
[PHP]PHP rpc框架hprose测试
查看>>
Atom 编辑器系列视频课程
查看>>
C#三种定时器
查看>>
范数 L1 L2
查看>>
协同过滤及大数据处理
查看>>
Java8 本地DateTime API
查看>>
[原][osgearth]osgearthviewer读取earth文件,代码解析(earth文件读取的一帧)
查看>>
完美解决html中select的option不能隐藏的问题。
查看>>
推荐5大开源工具,用于开发Kubernetes项目
查看>>
制定2015年的移动开发策略
查看>>
JPA 2.2改进了易用性
查看>>
从蚂蚁金服实践入手,带你深入了解 Service Mesh
查看>>
24周年,“常青树”Delphi发布新版本10.3.1
查看>>
7. 从数据库获取数据- 从零开始学Laravel
查看>>
阿里百川码力APP监控 来了!
查看>>
使用dotenv管理环境变量
查看>>
温故js系列(11)-BOM
查看>>
Vuex学习
查看>>
bootstrap - navbar
查看>>
切图崽的自我修养-[ES6] 编程风格规范
查看>>