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
相关推荐
excel2 小时前
ES6 中函数的双重调用方式:fn() 与 fn\...``
前端
可乐爱宅着2 小时前
全栈框架next.js入手指南
前端·next.js
你的人类朋友4 小时前
什么是API签名?
前端·后端·安全
会豪6 小时前
Electron-Vite (一)快速构建桌面应用
前端
中微子6 小时前
React 执行阶段与渲染机制详解(基于 React 18+ 官方文档)
前端
唐某人丶6 小时前
教你如何用 JS 实现 Agent 系统(2)—— 开发 ReAct 版本的“深度搜索”
前端·人工智能·aigc
中微子6 小时前
深入剖析 useState产生的 setState的完整执行流程
前端
遂心_6 小时前
JavaScript 函数参数传递机制:一道经典面试题解析
前端·javascript
小徐_23336 小时前
uni-app vue3 也能使用 Echarts?Wot Starter 是这样做的!
前端·uni-app·echarts
RoyLin6 小时前
TypeScript设计模式:适配器模式
前端·后端·node.js