React 学习| 青训营笔记

43 阅读2分钟

这是我参与「第五届青训营 」笔记创作活动的第4天

react是什么?

React用于构建用户界面的JS库。是一个将数据渲染为HTML视图的开源JS库。

为什么学?

  • 原生JS操作DOM繁琐,效率低
  • 使用JS直接操作DOM,浏览器会进行大量的重绘重排
  • 原生JS没有组件化编码方案,代码复用低

React入门

React 基础案例

  1. 先倒入三个包
  2. 创建一个容器
  3. 创建虚拟DOM,渲染到容器中

这样,就会在页面中的这个div容器上添加这个h1

JSX基础语法

两种创建虚拟DOM的方式

  1. 使用JSX创建虚拟DOM
  2. 使用JS创建虚拟DOM

jsx语法规则

  • 定义虚拟DOM,不能使用“”
  • 标签中混入JS表达式的时候使用{}
  • 样式的类名指定不要使用class,使用className
  • 内敛样式要使用双大括号包裹
  • 不能有多个根标签,只能有一个跟标签
  • 标签必须闭合
  • 如果小写字母开头,就将标签转化为html同名元素,如果html中无该标签对应的元素,就报错;如果是大写字母开头,react就去渲染对应的组件,如果没有就报错

模块与组件、模块化与组件化的理解

模块

理解:向外提供特定功能的js程序, 一般就是一个js文件

为什么要拆成模块:随着业务逻辑增加,代码越来越多且复杂。 作用:复用js, 简化js的编写, 提高js运行效率

组件

理解:用来实现局部功能效果的代码和资源的集合(html/css/js/image等等) 为什么要用组件: 一个界面的功能更复杂 作用:复用编码, 简化项目编码, 提高运行效率

模块化

当应用的js都以模块来编写的, 这个应用就是一个模块化的应用

组件化

当应用是以多组件的方式实现, 这个应用就是一个组件化的应用

函数式组件

类式组件