React学习重点

React 起源于 Facebook 的内部项目,因为该公司对市场上所有 JavaScript MVC 框架,都不满意,就决定自己写一套,用来架设Instagram 的网站。做出来以后,发现这套东西很好用,就在2013年5月开源了。
React主要用于构建UI。你可以在React里传递多种类型的参数,如声明代码,帮助你渲染出UI、也可以是静态的HTML DOM元素、也可以传递动态变量、甚至是可交互的应用组件。

1.先说react中需要用到的插件(vscode)

React学习使用

2.虚拟DOM

我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

  1. ⭐虚拟dom本质:浏览器中的概念,用JS对象来表示页面上的元素,并提供了操作DOM对象的api
  2. ⭐什么是react中的虚拟dom:是框架中的概念,是程序员用JS来模拟页面上的dom和dom嵌套
  3. ⭐为什么要实现虚拟dom(作用):为了实现页面中,dom元素的高效更新。
  4. ⭐程序员手动模拟两颗新旧dom树,就是react中虚拟dom的概念。

3.diff算法

  1. ⭐Tree diff:新旧两颗dom树逐层对比的过程就是tree diff,当整棵dom树逐层对比完毕,则左右需要按需更新的元素,必然能够找到
  2. ⭐Component diff:在进行tree diff的时候,每层中组件级别的对比,叫做component diff,如果对比前后,组件的类型相同,则暂时认识此组件不需要被更新,如果对比前后组件类型不同,则需要移除旧组件,创建新组建并追加到页面上。
  3. ⭐Element diff:在进行组件对比的时候,如果两个组件类型相同,则需要进行元素级别的对比,叫做element diff

React学习使用

4.项目中使用react(不使用脚手架)

命令:运行 npm i react react-dom -S 安装包
1.⭐react:专门用于创建组件和虚拟dom的,同时组件的生命周期也在这个包中
2.⭐react-dom:专门进行dom操作的,最主要的应用场景就是ReactDOM.render()
3.⭐导入:在index.js/main.js中import React from ‘react’
import ReactDOM from ’react-dom’
4.⭐创建虚拟dom元素
React.createElement(‘’)
//乱!不适用!!
Const myapp = React.createElement(h1,{id:”h1”,title:”标题”},”一个h1 标签”)
渲染:ReactDOM.render(myapp,document.getElementbyId(‘app’))

5.JSX语法

1.⭐js文件中默认不能写类似html的标记代码,可以使用babel来转换这些js中的标签,
2.⭐js中混合写入html标签的语法叫做JSX语法
Const mydiv = <div id=”mydiv” title:”h1标签”>标签
3.⭐当我们需要在JSX控制的区域内,写JS表达式了,则需要吧JS代码写到{}中

如何启用JSX语法:
方法:安装babel (将不能识别的jsx语法装换成React.createElement写法)
bbReact学习使用

相关文章:

  • 2022-01-01
  • 2022-01-15
  • 2021-11-15
  • 2021-06-21
  • 2021-08-22
  • 2022-12-23
猜你喜欢
  • 2021-05-18
  • 2021-11-16
  • 2021-08-05
  • 2021-11-16
  • 2022-12-23
  • 2022-12-23
  • 2021-07-23
相关资源
相似解决方案