React-React.memo-props比较机制

React.memo

作用:允许组件在Props没有改变的情况下跳过渲染

react组件默认的渲染机制:只要父组件重新渲染子组件就会重新渲染

如果子组件本身不需要做重新渲染,就会存在浪费,memo就可以实现

React.memo基础语法
父组件
javascript 复制代码
import { Button } from 'antd-mobile'
import Son from "./components/son";
import { useState } from "react";
const Year = () => {
  const [count,setCount] = useState(0)
  return (
    <div>
      父组件
      <div className="purple-theme">
        <Button color="primary" onClick={()=> setCount(count + 1)}>{count}</Button>
      </div>
      <Son></Son>
    </div>
  );
};
export default Year;

只要父组件发生变化,子组件就会重新渲染 点击方法执行子组件就会重新渲染

子组件 解决使用memo语法 只有props发生变化才会触发重新渲染
javascript 复制代码
import { memo } from "react";
const Son =memo(() => {
    console.log('我是子组件,我重新渲染了');
    
  return (
    <div>
      我是子组件
    </div>
  );
})
export default Son;

React.memo-props比较机制

相关推荐
之歆13 分钟前
DAY_18深度解析:数据类型转换与运算符全攻略(上)
前端·javascript
大家的林语冰21 分钟前
pnpm 11 发布,弃用 JSON 和 npm CLI,进化为纯 ES6 模块,新增 pnpm pack-app 等命令,供应链保护默认启用,要求 Node
前端·javascript·node.js
漓漾li31 分钟前
每日面试题-前端2
前端·react.js·面试
Alice-YUE40 分钟前
深入解析 JS 事件循环:浏览器与 Node.js 的差异全解析
前端·javascript·笔记·学习
HYCS42 分钟前
用pixijs实现fabricjs(二):对象的基础位置信息
前端·javascript·canvas
Alice-YUE43 分钟前
【无标题】
开发语言·javascript·ecmascript
淸湫1 小时前
项目中使用了全局权限管理,请详细描述如何通过Vue Router的路由守卫来实现全局权限控制?
前端·vue.js
Twsit丶1 小时前
ECMAScript 常用特性整理(ES6 — ES13)
javascript
雪铃儿1 小时前
Shorebird 之外,Flutter Android 热更新还有什么选择
android·前端
李剑一1 小时前
前端必看 | Vue 刷新页面,生命周期钩子直接 "罢工",原来问题在这?90% 开发者都栽过!
前端·vue.js