# 张天禹React基础学习记录 **Repository Path**: mr-nianj/react-learning-record ## Basic Information - **Project Name**: 张天禹React基础学习记录 - **Description**: React学习笔记备份 视频链接:https://www.bilibili.com/video/BV1wy4y1D7JT - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 7 - **Created**: 2022-05-12 - **Last Updated**: 2025-08-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # React笔记 ## 相关资源 [FrontEndNotes笔记](https://brucecai55520.gitee.io/my-notes) [原课程链接](https://www.bilibili.com/video/BV1wy4y1D7JT) [大佬仓库](https://gitee.com/hongjilin/hongs-study-notes) [React 中文官网](https://react.docschina.org/) ## 前言 | Reat简介 React:用于构建用户界面的 JavaScript 库。由 Facebook 开发且开源。是一个将视图渲染为html视图的开源库 ### 为何学习 React 原生 JavaScript 的痛点: - 操作 DOM 繁琐、效率低 - 使用 JavaScript 直接操作 DOM,浏览器进行大量重绘重排 - 原生 JavaScript 没有组件化编码方案,代码复用率低 ### React 的特点: - 采用组件化模式、声明式编码,提高开发效率和组件复用率 - 在 React Native 中可用 React 语法进行移动端开发 - 使用虚拟 DOM 和 Diffing 算法,减少与真实 DOM 的交互(数据-虚拟DOM-真实DOM) ### 需要掌握的js基础 判断this指向 class类 ES6语法规范 npm包管理 原型以及原型链 数组常用方法 模块化 ## 第一章:React入门 ### Hello React 相关js库 - react.development.js :React 核心库 - react-dom.development.js :提供 DOM 操作的 React 扩展库 - babel.min.js :解析 JSX 语法(js语法糖),转换为 JS 代码 ```html
``` ### 创建VDOM的两种方式 第一种 jsx方式(推荐) ```html ``` 第二种方式 ```html ``` ### VDOM | DOM 关于虚拟 DOM: - 本质是 Object 类型的对象(一般对象) - 虚拟 DOM 比较“轻”,真实 DOM 比较“重”,因为虚拟 DOM 是 React 内部在用,无需真实 DOM 上那么多的属性。 - 虚拟 DOM 最终会被 React 转化为真实 DOM,呈现在页面上。 ```html ``` ### React JSX 全称:JavaScript XML React 定义的类似于 XML 的 JS 扩展语法;本质是 React.createElement() 方法的语法糖 作用:简化创建虚拟 DOM 补充:js中,JSON的序列化和反序列化使用parse()/stringify() JSX 语法规则 - 定义虚拟 DOM 时,不要写引号 - 标签中混入 JS 表达式需要使用 {} - 指定类名不用 class,使用 className - 内联样式,使用 style={{ key: value }} 的形式 - 只能有一个根标签 - 标签必须闭合,单标签结尾必须添加 /:`` - 标签首字母小写,则把标签转换为 HTML 对应的标签,若没有,则报错 - 标签首字母大写,则渲染对应组件,若没有定义组件,则报错 ```html当前求和结果为:Redux:{store.getState()}
当前求和结果为:{count}