没有合适的资源?快使用搜索试试~ 我知道了~
尚硅谷react全家桶1


试读
30页
需积分: 0 9 下载量 69 浏览量
更新于2022-08-08
收藏 3.88MB DOCX 举报
【React入门】React是Facebook开发的一个JavaScript库,主要用于构建用户界面,特别是单页应用程序的视图层。React只关注视图层,使得开发者能够高效地处理动态内容。它以其声明式编码风格、组件化编码结构以及React Native支持原生应用开发而著称。
**React的特点**:
1. **声明式编码**:React鼓励使用声明式的编程方式,让代码更易读,因为代码自然地表达了视图应该是什么样子。
2. **组件化编码**:React的核心思想是组件,将UI拆分成独立、可重用的组件,每个组件都有自己的状态和生命周期方法。
3. **React Native**:React不仅用于Web开发,通过React Native,开发者可以用相同的JSX语法开发原生移动应用。
4. **高效性能**:React使用虚拟DOM(Virtual DOM)和DOM Diffing算法,减少了对实际DOM的操作,从而提高了性能。
**React的基本使用**:
1. **React核心库**:react.js是React的核心库,负责处理组件和虚拟DOM。
2. **react-dom.js**:提供与DOM交互的扩展库,如渲染到DOM。
3. **Babel**:babel.min.js是一个JavaScript编译器,将JSX语法转换为浏览器可以理解的标准JavaScript。
**创建虚拟DOM**:
React提供`React.createElement()`方法创建虚拟DOM,通常使用JSX语法糖来简化这个过程。JSX允许在JavaScript中嵌入类似HTML的语法,但它不是字符串,而是被解析为JavaScript对象。
**React JSX**:
1. **JSX本质**:JSX是JavaScript的一个扩展,类似于XML,但实际上是`React.createElement()`方法的简洁表示。
2. **JSX的好处**:简化创建虚拟DOM的过程,使代码更接近HTML,提高可读性。
3. **JSX规则**:可以使用任意标签名称,包括HTML标签和其他自定义标签,标签属性也可以自由设置,JS表达式需包裹在花括号中。
4. **Babel的角色**:将JSX代码转换为普通JavaScript,以便浏览器可以执行。
**渲染虚拟DOM**:
使用`ReactDOM.render()`方法将虚拟DOM元素渲染到页面的真实DOM元素中。这个过程包括创建组件实例、调用`render()`方法生成虚拟DOM树,然后将虚拟DOM转化为真实DOM并插入到指定容器。
**模块与组件**:
- **模块**:模块是提供特定功能的JavaScript代码,通过模块化可以拆分复杂代码,提高代码复用性和执行效率。
- **组件**:组件是React中的核心概念,是实现部分UI功能的代码集合,可以复用,简化项目开发。
**面向组件编程**:
React提倡面向组件的编程方式,组件是可重用的代码单元,有自己的状态和生命周期。组件可以通过函数式组件或类组件来创建。开发过程中,使用React DevTools可以方便地进行调试。组件的生命周期包括挂载、更新和卸载阶段,其中关键的属性包括props(属性)、state(状态)和生命周期方法。

React 全家桶(技术栈)
尚硅谷前端研究院
第 1 章:React 入门
1.1. React 简介
1.1.1. 官网
1. 英文官网: https://reactjs.org/
2. 中文官网: https://react.docschina.org/
1.1.2. 介绍描述
1. 用于动态构建用户界面的 JavaScript 库(只关注于视图)
2. 由 Facebook 开源
1.1.3. React 的特点
1. 声明式编码
2. 组件化编码
3. React Native 编写原生应用
4. 高效(优秀的 Diffing 算法)
1.1.4. React 高效的原因
1. 使用虚拟(virtual)DOM, 不总是直接操作页面真实 DOM。
2. DOM Diffing 算法, 最小化页面重绘。

1.2. React 的基本使用
1.2.1. 效果
1.2.2. 相关 js 库
1. react.js:React 核心库。
2. react-dom.js:提供操作 DOM 的 react 扩展库。
3. babel.min.js:解析 JSX 语法代码转为 JS 代码的库。
1.2.3. 创建虚拟 DOM 的两种方式
1. 纯 JS 方式(一般不用)
2. JSX 方式
1.2.4. 虚拟 DOM 与真实 DOM
1. React 提供了一些 API 来创建一种 “特别” 的一般 js 对象
const VDOM = React.createElement('xx',{id:'xx'},'xx')

上面创建的就是一个简单的虚拟 DOM 对象
2. 虚拟 DOM 对象最终都会被 React 转换为真实的 DOM
3. 我们编码时基本只需要操作 react 的虚拟 DOM 相关数据, react 会转换为真实
DOM 变化而更新界。
1.3. React JSX
1.3.1. 效果
1.3.2. JSX
1. 全称: JavaScript XML
2. react 定义的一种类似于 XML 的 JS 扩展语法: JS + XML 本质是
React.createElement(component, props, ...children)方法的语法糖
3. 作用: 用来简化创建虚拟 DOM
1) 写法:var ele = <h1>Hello JSX!</h1>
2) 注意 1:它不是字符串, 也不是 HTML/XML 标签
3) 注意 2:它最终产生的就是一个 JS 对象
4. 标签名任意: HTML 标签或其它标签
5. 标签属性任意: HTML 标签属性或其它
6. 基本语法规则

1) 遇到 <开头的代码, 以标签的语法解析: html 同名标签转换为 html 同名元素,
其它标签需要特别解析
2) 遇到以 { 开头的代码,以 JS 语法解析: 标签中的 js 表达式必须用{ }包含
7. babel.js 的作用
1) 浏览器不能直接解析 JSX 代码, 需要 babel 转译为纯 JS 的代码才能运行
2) 只要用了 JSX,都要加上 type="text/babel", 声明需要 babel 来处理
1.3.3. 渲染虚拟 DOM(元素)
1. 语法: ReactDOM.render(virtualDOM, containerDOM)
2. 作用: 将虚拟 DOM 元素渲染到页面中的真实容器 DOM 中显示
3. 参数说明
1) 参数一: 纯 js 或 jsx 创建的虚拟 dom 对象
2) 参数二: 用来包含虚拟 DOM 元素的真实 dom 元素对象(一般是一个 div)
1.3.4. JSX 练习
需求: 动态展示如下列表
1.4. 模块与组件、模块化与组件化的理解
1.4.1. 模块
1. 理解:向外提供特定功能的 js 程序, 一般就是一个 js 文件
2. 为什么要拆成模块:随着业务逻辑增加,代码越来越多且复杂。

3. 作用:复用 js, 简化 js 的编写, 提高 js 运行效率
1.4.2. 组件
1. 理解:用来实现局部功能效果的代码和资源的集合(html/css/js/image 等等)
2. 为什么要用组件: 一个界面的功能更复杂
3. 作用:复用编码, 简化项目编码, 提高运行效率
1.4.3. 模块化
当应用的 js 都以模块来编写的, 这个应用就是一个模块化的应用
1.4.4. 组件化
当应用是以多组件的方式实现, 这个应用就是一个组件化的应用
第 2 章:React 面向组件编程
剩余29页未读,继续阅读
资源推荐
资源评论
2022-08-08 上传
2019-08-15 上传

183 浏览量

133 浏览量

2022-08-04 上传

1700 浏览量
点击了解资源详情
资源评论


王元祺
- 粉丝: 2236
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 简易可编程稳压电源方案设计书(修改后文件).doc
- 早期阅读的深度学习支持策略研究.docx
- 科研院所项目管理经费审计探析.doc
- 单片机应用中的软件抗干扰技术.docx
- 基于网络数据的品牌对大枣销售影响.docx
- 人工智能下中小学教学与管理的变革-.docx
- 通信工程勘察安全操作规程和设计安全注意事项-(新员工培训).ppt
- 基于单片机的红外防盗报警器的方案设计书091301141296.doc
- 建设工程项目管理中监理模式优化与实践创新分析.docx
- 信息化技术在煤炭工业领域应用与发展.doc
- 网络化应急管理需求.docx
- kubernetes系列05—kubectl应用快速入门.doc
- 液体混合装置plc控制系统方案设计书原版2.doc
- C语言程序实验报告循环控制程序的设计.doc
- 项目教学法在中职《网络技术》实训课中的实践.docx
- 配网自动化开关故障处理及运行维护1.docx
安全验证
文档复制为VIP权益,开通VIP直接复制
