- 教学目标
- 知识目标(学什么知识)
- 掌握react的使用
- 掌握react组件开发
- 掌握react数据流
- 掌握react components生命周期
- 掌握react事件系统
- 掌握react组件间的通信
- 掌握react高阶组件
- 掌握react组件优化
- 掌握propTypes验证器
- 掌握react-router路由
- 掌握redux基本概念
- 掌握redux数据流
- 掌握react-redux开发
- 能力目标(产出物是什么)
- 使用react结合react-router、es6、react-redux全家桶实现webapp开发
- 使用webpack结合nodejs进行服务端渲染
- 使用webpack作为构建工具,对各类型文件进行编译打包管理
- 使用node-express搭建web服务器并结合webpack进行热更新开发
- 将项目提交到gitHub上进行管理
- 参考教材
- 课程内容安排
- React简介
- React的简介
- 专注视图层
- Virtual DOM虚拟DOM
- JSX的由来以及基本语法
- 渲染元素
- React的简介
- React组件
- React组件
- 组件的演变
- React组件的构建
- React数据流
- state
- props
- React组件
- React生命周期
2.1.1 getDefaultProps
2.1.2 getInitialState
2.1.3 componentWillMount
2.1.4 render
2.1.5 componentDidMount
2.2 存在期
2.2.1 componentWillReceiveProps
2.2.2 shouldComponentUpdate
2.2.3 componentWillUpdate
2.2.4 render
2.2.5 componentDidUpdate
2.3 销毁 & 清理期
2.3.1 componentWillUnmount
- refs 与 DOM
2.4.1 findDOMNode()
2.4.2 unmountComponentAtNode()
2.4.3 refs
- React事件系统
- 事件系统
- 合成事件的绑定方式与实现机制
- 在React中使用原生事件
- React合成事件与JavaScript原生事件
- 事件
- 键盘事件
- onKeyDown
- onKeyPress
- onKeyUp
- 焦点事件
- onFocus
- onBlur
- 表单事件
- onChange
- onInput
- onSubmit
- 鼠标事件
- onClick
- onContextMenu
- onDoubleClick
- onMouseDown
- onMouseUp
- onMouseOver
- onMouseOut
- onMouseMove
- onMouseEnter
- onMouseLeave
- onDrag
- 选择事件
- onSelect
- 触摸事件
- onTouchCancel
- onTouchEnd
- onTouchMove
- onTouchStart
- UI事件
- onScroll
- 动画事件
- onAnimationStart
- onAnimationEnd
- onAnimationIteration
- 图像事件
- onLoad
- onError
- 媒体事件
- onPause
- onPlay
- onCanPlay
- onLoadStart
- onProgress
- 剪贴板事件
- onCopy
- onCut
- onPaste
- 键盘事件
- 事件系统
- React组件之间的通信
- 组件间的通信
- 父组件向子组件通信
- 子组件向父组件通信
- 跨级组件通信
- 没有嵌套关系的组件通信
- 组件间的通信
- react 组件
- 组件间抽象
- 高阶组件
- 组合式组件开发实践
- 组件间抽象
- react 优化
- 组件性能优化
- 纯函数
- PureRender
- Immutable
- Lists and Key
- 组件性能优化
- 使用propTypes进行类型检查
- propTypes验证器
- PropTypes.array
- PropTypes.bool
- PropTypes.func
- PropTypes.number
- PropTypes.object
- PropTypes.string
- PropTypes.symbol
- PropTypes.node
- PropTypes.element
- PropTypes.instanceOf()
- PropTypes.oneOf()
- PropTypes.oneOfType()
- PropTypes.arrayOf()
- PropTypes.objectOf()
- PropTypes.shape()
- PropTypes.func.isRequired
- PropTypes.any.isRequired
- propTypes验证器
- children
- children
- defaultProps
- form
- 受控组件
- textarea
- select
- react-router以及Redux基本概念
- 路由组件
- 组件的嵌套路由
- Redux基本概念
- 单向数据流
- Redux 介绍
- 在React中使用Redux 数据流
- react-redux 安装以及框架介绍
- 学习react-redux
- react-redux项目结构
- action和reducer
- 介绍store
- Redux 开发
- Redux 开发样例工程
- 官方demo介绍
- 项目结构
- action
- reducer
- redux组件开发
- Redux 开发样例工程
- 实战-dva脚手架应用
- 实战- ant design应用
- 实战-项目搭建
- 实战-登录注册
- 导航切换页面内容路由
- 列表页到详情页路由交互以及数据展示
- 实战-下拉刷新点击加载
- 实战-图片轮播