React新手开发:从零到一的经验之谈

165 阅读4分钟

引言

作为一个拥有一年Vue项目开发经验的前端新人,在没学过React相关知识但突然接手React项目并要求两周内上线的情况下,我是如何通过项目来快速学习React相关知识的

  • 注:本篇文章不会介绍React具体知识,而是以拥有Vue经验的开发人员视角,来了解如何快速搭建并开发React项目
  • 注:因此下边的介绍均从Vue项目搭建角度出发

项目准备


  1. 通过脚手架直接创建React项目。在cmd中执行create-react-app命令
  2. 进入项目直接查看package.json文件了解项目的相关技术栈
  3. 选择包管理工具,按个人习惯来,我是用yarn

项目分析


  1. 查看创建好的项目的目录结构
  2. 了解每个文件,以及文件夹的作用
  3. 以下是典型的React项目目录结构树,可以发现和Vue项目非常相似
├── public                  # 公共文件 
│   ├── index.html          # 首页HTML文件  
│   └── favicon.ico         # 图标文件  
├── src                     # 源代码  
│   ├── components          # 组件  
│   │   ├── Header.js       # 头部组件  
│   │   ├── Navigation.js   # 导航组件  
│   │   ├── Footer.js       # 底部组件  
│   │   └── ...             # 公共组件  
│   ├── pages               # 页面  
│   │   ├── home            # 主页  
│   │   ├── login           # 登录页
│   │   └── ...             # 其他页面 
│   ├── utils               # 工具
│   │   ├── api.js          # API请求工具函数  
│   │   ├── config.js       # 项目配置文件  
│   │   └── ...             # 其他工具函数(一些通用的工具函数,如格式化日期等)  
│   ├── styles              # 全局样式文件夹
│   └── index.jsx           # 入口文件  
├── package.json            # 项目依赖和运行配置文件  
├── yarn.lock               # Yarn锁定文件,确保依赖项版本一致性  
└── node_modules            # Node.js模块文件夹,包含项目依赖项

项目启动


  1. 查看package中的script命令,通过yarn来执行即可,如果报错(先执行yarn来安装项目依赖)
  2. 对新手来说,通过脚手架创建的项目,项目的构建配置是开箱即用的,
  3. 项目启动与Vue一样也是通过构建工具来启动的,如webpack,启动的原理去了解webpack相关知识即可。

项目开发


! 终于到了最关键的一步,拥有Vue项目开发经验的我们,肯定熟悉Vue项目的开发流程,我们可以对比分析出React如何开发,并学习相应部分的知识

  1. 找入口文件,在项目分析中我们知道了index.jsx是入口文件,找到主app
  2. 删除无用的代码和文件,比如删除脚手架创建时默认生成的页面,在pages中
  3. 配置路由,有路由才能跳转页面,分析package.json可推测react-route-dom是路由模块,去npmjs.com中查找该模块,学习如何配置
  4. 创建路由对应的页面,在pages中创建页面模块即可
  5. 引入UI组件库,比如耳熟能详的antd
  6. 引入css样式工具,比如sass,less,或者使用样式库,比如tailwindcss
  7. 页面搭建,实现一个最简单的页面,在浏览器中查看效果
  8. 封装请求工具,比如axios

页面开发


! 通过梳理Vue页面开发需要编写的知识点来学习对于React的方式,具体有变量定义,方法定义,模板的编写,模板中属性和变量的书写方式,父子组件通信,全局状态管理,路由的访问,生命周期的钩子。

  1. 单文件组件:Vue页面开发时,我们的组件封装是通过.vue文件实现的,在React中没有这种格式,我们是通过jsx语法来封装
  2. jsx语法:其实Vue也支持jsx语法,如果学过直接上手即可
  3. React语言的编写规范:比如响应式变量和属性,方法等在jsx中如何编写
  4. 生命周期:学习React中组件的生命周期,了解各生命周期所能实现的操作
  5. 父子组件通信:与Vue相似通过props传值,通过自定义事件回传
  6. 全局状态管理:比如mobx库,或者直接使用官方提供的context钩子,但没有这种场景可暂不学习
  7. 路由访问:学习react-route-dom的路由访问方式,如通过官方提供的useHistory钩子来实现路由的访问

总结

  • 基本上你会发现按照Vue的开发经验来了解React项目是很快的
  • 除了React以及生态库的用法和编写方式需要学习之外,其余都是相通的,通过这种方式可以提升对项目的熟悉程度,同时不至于不知道从何处下手