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
相关推荐
spionbo几秒前
Vue 表情包输入组件实现代码及完整开发流程解析
前端·javascript·面试
全宝1 分钟前
✏️Canvas实现环形文字
前端·javascript·canvas
lyc2333331 分钟前
鸿蒙Core File Kit:极简文件管理指南📁
前端
哆啦A梦的口袋呀1 分钟前
基于Python学习《Head First设计模式》第九章 迭代器和组合模式
python·学习·设计模式
我这里是好的呀1 分钟前
全栈开发个人博客12.嵌套评论设计
前端·全栈
我这里是好的呀3 分钟前
全栈开发个人博客13.AI聊天设计
前端·全栈
金金金__3 分钟前
Element-Plus:popconfirm与tooltip一起使用不生效?
前端·vue.js·element
lyc2333334 分钟前
小L带你看鸿蒙应用升级的数据迁移适配📱
前端
虾球xz8 分钟前
CppCon 2015 学习:3D Face Tracking and Reconstruction using Modern C++
开发语言·c++·学习·3d