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
相关推荐
海底的星星fly1 分钟前
【Prompt学习技能树地图】生成知识提示技术的深度解析与应用
人工智能·学习·prompt
by__csdn2 分钟前
Node.js版本与npm版本的对应关系
前端·npm·node.js
槿花Hibiscus20 分钟前
C++基础:Reactor模型设计思想与muduo架构理解
学习
AI_567823 分钟前
Webpack性能优化终极指南:4步实现闪电打包
前端·webpack·性能优化
威风的虫1 小时前
ES6 数组方法:告别循环,拥抱函数式编程
开发语言·前端·javascript
小杨快跑~1 小时前
ES6 Promise:告别回调地狱的异步编程革命
前端·javascript·ecmascript·es6
straw_hat.1 小时前
32HAL——RTC时钟
stm32·学习
linweidong1 小时前
VIVO前端面试题及参考答案
前端·跨域·localstorage·重绘·浏览器兼容·git管理·前端重构
有意义1 小时前
从零搭建:json-server+Bootstrap+OpenAI 全栈 AI 小项目
前端·后端·llm
温宇飞1 小时前
CCState:为大型 Web 应用设计的状态管理库
前端