React 学习——React.memo(简单、引用类型的prop)

  1. 传递一个简单类型的prop,prop变化时组件重新渲染

  2. 传递一个引用类型的prop,比较的是新值和旧值的引用是否相等;当父组件的函数重新执行时,实际上形成的是新的数组引用;

保持引用稳定->useMemo 组件渲染的过程中缓存一个值

javascript 复制代码
import {  memo, useMemo, useState } from 'react';

const MemoSon = memo(function Son({count,list}){
  console.log('子组件渲染',count);
  return <div>子组件</div>
})

const App = () => {
  const [count, setCount] = useState(0);//简单类型
  // const list = [1,2,3,4,5];//引用类型
  const list = useMemo(()=>{  //缓存,子组件就不会跟着重新渲染了
    return [1,2,3,4,5];
  },[])
  return (
    <div className="home">
      {/* count={count} */}
     <MemoSon list={list} />
     <button onClick={() => setCount(count + 1)}>+{count}</button>
    </div>
  )
}

export default App
相关推荐
Xeon_CC16 分钟前
在react-app-rewired工程项目中,调试AntVG6库源码包。
前端·react.js·前端框架
BullSmall34 分钟前
《道德经》第五十八章
学习
o***Z4481 小时前
前端无障碍开发检查清单,WCAG合规
前端
码上成长1 小时前
React 18 并发特性:useTransition 和 useDeferredValue 动画级解释
javascript·react.js·ecmascript
三品吉他手会点灯1 小时前
STM32F103学习笔记-16-RCC(第4节)-使用 HSI 配置系统时钟并用 MCO 监控系统时钟
笔记·stm32·单片机·嵌入式硬件·学习
J***Q2921 小时前
前端CSS架构模式,BEM与ITCSS
前端·css
Lester_11012 小时前
嵌入式学习笔记 - 关于看门狗定时器的喂狗的操作放在中断还是放在主循环
笔记·单片机·学习
G***T6912 小时前
React性能优化实战,避免不必要的重渲染
前端·javascript·react.js
q***d1732 小时前
前端微前端部署方案,Nginx与Webpack
前端·nginx·webpack
y***54882 小时前
前端构建工具扩展,Webpack插件开发
前端·webpack·node.js