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
相关推荐
晴天163 分钟前
HTML iframe 标签全面解析:原理、属性、实战场景与最佳实践
前端·html·状态模式
罗西的思考4 分钟前
[Agent Memory / 强化学习] MemPO源码学习笔记 —(1)— 总体
人工智能·笔记·深度学习·学习·机器学习
parade岁月7 分钟前
倒反天罡!押注 React Native 6 年后,Shopify 又回到了原生开发
android·前端·ios
柚稚姐姐7 分钟前
npm install pnpm -g npm error code EACCES npm error syscall symlink
前端·npm·node.js
涛涛ing11 分钟前
2026 年,你可以从项目中删掉这 5 个 npm 包了
前端
老猿讲编程25 分钟前
【Eclipse OpenSOVD学习之十】客户端 SDK
学习·eclipse·嵌入式软件·车载·sovd
gjf05_0527 分钟前
人该怎样活着呢?版本74.5
学习
乐迪信息31 分钟前
航道船舶逆行AI识别,港口安全智能告警系统
大数据·前端·人工智能·安全·计算机视觉·音视频
励志不掉头发的内向程序员34 分钟前
【LibreCAD 2D架构】鼠标点下的坐标为什么会被“吸”走?LibreCAD 对象捕捉系统解析
开发语言·c++·qt·学习·系统架构