Skip to content

Commit d423d09

Browse files
committed
fix: --
1 parent 8508442 commit d423d09

File tree

4 files changed

+100
-1
lines changed

4 files changed

+100
-1
lines changed

README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -236,10 +236,12 @@
236236
- [mysql教程](./Mysql/mysql.md)
237237
- [HTTP](./企业级/HTTP.md)
238238

239-
## React全家桶 🪣 (react文件夹 📁 下)
239+
## React技术全家桶
240240

241241
### 阶段一
242242

243+
- [react简介](./react/react简介.md)
244+
- [hello-react](./react/hello-react.md)
243245
- [第一个React Web应用程序](./react/Web应用程序.md)
244246
- [React State(状态)](./react/State.md)
245247
- [React Props](./react/Props.md)
@@ -260,6 +262,8 @@
260262
- [Hooks](./react/Hooks.md)
261263
- [Others](./react/Others.md)
262264
- [react-fiber-root](./react/react-fiber-root.md)
265+
- [JSX](./react/JSX.md)
266+
263267

264268

265269
## 常见问题及解答

react/JSX.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
1. 全称:JavaScript XML
2+
2. react定义的一种类似于XML的
3+
3. 本质是React.createElement(component, props, ...children) 方法的语法糖
4+
4. 作用:用来简化创建虚拟DOM
5+
5. 标签名任意:HTML标签或其它标签
6+
7+
8+
## jsx语法规则:
9+
10+
1. 定义虚拟DOM时,不要写引号
11+
2. 标签中混入JS表达式时要用{}
12+
3. 样式的类名指定不要用class,要用className
13+
4. 内联样式,要用`style={{key:value}}`的形式去写
14+
5. 只有一个根标签
15+
6. 标签必须闭合
16+
7. 标签首字母:若小写字母开头,则将改标签为html中同名元素;若html中无同名元素,则报错。 若大写字母开头,react就去渲染对应的组件,若组件没有定义,则报错。

react/hello-react.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
## 相关js库
2+
3+
1. react.js
4+
2. react-dom.js 提供操作DOM的react扩展库
5+
3. babel.min.js 解析JSX语法代码转为JS代码的库
6+
7+
## babel
8+
9+
1. es6->es5
10+
2. jsx->js
11+
12+
## 虚拟DOM的两种创建方式
13+
14+
1. 使用JSX创建虚拟DOM
15+
2. 使用js创建虚拟DOM
16+
17+
```js
18+
const VDOM = React.createElement('h1', { id: 'title' }, 'hello')
19+
```
20+
21+
## 虚拟DOM与真实DOM
22+
23+
虚拟DOM ,一般对象
24+
25+
真实DOM
26+
27+
## 关于虚拟DOM
28+
29+
1. 本质是Object类型的对象(一般对象)
30+
2. 虚拟DOM比较“轻”,真实DOM比较“重”,因为虚拟DOM是React内部在用,无需真实DOM上那么多的属性。
31+
3. 虚拟DOM最终会被React转化为真实DOM,呈现在页面上。
32+
33+

react/react简介.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
React-Router 路由
2+
3+
PubSub 消息管理
4+
5+
Redux 集中式状态管理
6+
7+
Ant-Design 精美的UI组件库
8+
9+
## React简介
10+
11+
React 用于构建用户界面的JavaScript库
12+
13+
1. 发送请求获取数据
14+
2. 处理数据(过滤,整理格式等)
15+
3. 操作DOM呈现页面
16+
17+
是一个将数据渲染为HTML视图的开源JavaScript库
18+
19+
20+
```js
21+
document.getElementById('app')
22+
document.querySelector('#app')
23+
document.getElementsByTagName('span')
24+
```
25+
26+
## 为什么要学
27+
28+
1. 原生JavaScript操作DOM繁琐,效率低
29+
2. 使用JavaScript直接操作DOM,浏览器会进行大量的重绘重排
30+
3. 原生JavaScript没有组件化编码方案,代码复用率低
31+
32+
## React特点
33+
34+
1. 采用组件化模式,声明式编码,提高开发效率以及组件复用率。
35+
2. 在React Native中可以使用React语法进行移动端开发。
36+
3. 使用虚拟DOM+优秀的Diffing算法,尽量减少与真实DOM的交互。
37+
38+
https://react.docschina.org/
39+
40+
a. 声明式编码
41+
42+
b. 组件化编码
43+
44+
c. React Native 编写原生应用
45+
46+
d. 高效

0 commit comments

Comments
 (0)