自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 为什么react选择了函数式组件(剖析原理)

以下代码,没有使用模块化的方式,使用的是CDN的方式。如果需要源代码,请从这个地址下载:链接:https://pan.baidu.com/s/1s57mr5AE_ecWBFZ5TJTwqw提取码:f7x2另外,这篇文章,主要是剖析组件的初次渲染和重新渲染。所以,其它部分不要太较劲。一、react类组件和函数式组件重新渲染时的区别1、看现象:1)、代码(demo01)类组件: // 1、类组件 class ComClass extends React.Component {

2021-11-28 17:46:20 3251 2

原创 react_hooks系列04_useMemo

一、概念和作用​ 写在函数式组件里的 “函数调用代码”。如果函数式组件重新渲染时,每次都会执行“调用函数的代码”。如果不是必须的,那么就是性能的浪费。useMemo就是解决这个问题的。即:useMemo是防止不必要的的函数调用。​ 文字描述总是让你很难理解。很抽象。还是要看代码的。格式: useMemo(函数,数组); //当数组中的其中一个元素,发生变化时,就会调用 函数 。举例:如: const nameStr = useMemo(()=>genNa

2021-11-27 21:01:34 855

原创 react_hooks系列03_useCallback,高阶函数memo

react_hooks的useCallback,高阶函数memo一、概念和作用1、memo高阶函数:memo解决的是函数式组件的无效渲染问题,当函数式组件重新渲染时,会先判断数据是否发生了变化。相当于类组件的PureComponent(默认提供ShouldComponentUpdate)2、useCallback:1)、useCallback会返回一个函数的memoized(记忆的)值2)、在依赖不变的情况下,多次定义(如:函数)的时候,返回的值是相同的 。3)、格式:let 新的函数 =

2021-11-27 20:59:15 961 1

原创 react_hooks系列02_useEffect

一、作用​ 可以使得你在函数组件中执行一些带有副作用的方法,天哪,“副作用”(大脑中无数个????)。​ 每当 React组件更新之后,就会触发 useEffect,在第一次的render 和每次 update 后的useEffect触发,不用再去考虑“初次挂载”还是“更新”。React 保证了每次运行 effect 的同时,DOM 都已经更新完毕。​ 你可以把 useEffect Hook 看做 componentDidMount,componentDidU

2021-11-27 20:57:33 976 1

原创 react_hooks系列01_useState

一、作用:useState让函数式组件也可以处理状态。二、格式:1、定义状态:const [状态名,更新状态的函数] = React.useState(初始值|函数);​如:1)、基本类型的状态声明一个新的叫做 “count” 的 state 变量,初始值为0 。​const [count, setCount] = React.useState(0); //useState函数返回的是数组​​相当于类组件中的this.state={ count :0}​...

2021-11-27 20:55:26 434

原创 为什么react选择了函数式组件(剖析原理)

不好意思,这是知乎上我写的文章,就不再csdn发布了。如果需要阅读,请为什么react选择了函数式组件(剖析原理)

2021-11-24 22:53:52 565

原创 使用react脚手架搭建的项目,运行时和react-dev-tools工具冲突 Cannot read property ‘forEach‘ of undefined

使用react脚手架搭建的项目,运行时和react-dev-tools工具冲突,不能运行项目,报如下错:Cannot read property 'forEach' of undefinedat Object.injectIntoGlobalHook (react-refresh-runtime.development.js:465)解决方案:1、找到这个文件:../node_modules/@pmmmwh/react-refresh-webpack-plugin/clie...

2021-11-23 20:02:06 734

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除