美文网首页
React中_函数(memo)和class(PureCompon

React中_函数(memo)和class(PureCompon

作者: coderhzc | 来源:发表于2021-12-22 14:54 被阅读0次

memo 只能是函数组件可以使用的,类组件(class)是用不了的

所有的函数组件都是可以包裹一个memo函数的 这个函数就像类组件的PureComponent的效果是一样的

memo 阻止多次调用的问题

import React, { memo, PureComponent } from "react";


// 所有的函数组件都是可以包裹一个memo函数的 这个函数就像类组件的PureComponent的效果是一样的
const MemoHeader = memo(function Header() {
  console.log("Header render被调用了");
  return (
    <div>
      <h1>Header</h1>
    </div>
  );
});

class Main extends PureComponent {
  constructor(props) {
    super(props);
    this.state = {
      counter: 0,
    };
  }
  render() {
    console.log("Main render被调用了");
    return (
      <div>
        <h1>Main</h1>
      </div>
    );
  }
}

export default class App extends PureComponent {
  constructor(props) {
    super(props);
    this.state = {
      counter: 0,
    };
  }
  render() {
    console.log("App render被调用了");
    const { counter } = this.state;
    return (
      <div>
        <h1>当前计数:{counter}</h1>
        <button onClick={() => this.addClick()}> + 1</button>

        <MemoHeader />
        <Main />
      </div>
    );
  }

  addClick() {
    this.setState({
      counter: this.state.counter + 1,
    });
  }
}

PureComponent是专门针对 类组件的,memo是专门针对函数组件的,这两个的作用:主要是防止多次渲染

相关文章

  • React中_函数(memo)和class(PureCompon

    memo 只能是函数组件可以使用的,类组件(class)是用不了的 所有的函数组件都是可以包裹一个memo函数的 ...

  • 如何使用React.memo()

    目录 包装函数 PureComponent React.memo() React.memo() 与Redux 其他...

  • react新特性使用

    React.memo(CardItem,judgingUpdate)中的判断是否渲染的函数judgingUpdat...

  • react.memo

    React.memo 和 JS 的 memorize 函数的区别 https://dmitripavlutin.c...

  • React.memo() - React.lazy()

    介绍 包装函数 PureComponent React.memo() Redux配合使用 React.lazy()...

  • React 性能优化 - 避免重复渲染

    对于函数组件是否需要再次渲染,可以根据 React.memo 与 React.useMemo 来优化。 函数组件优...

  • React的生命周期

    react的一些函数的官方介绍 函数 / 方法 ES6中React组件是用class来定义的,关于class的知识...

  • React.memo()

    React 16.6.0 正式发布 React.memo() React.memo() 是什么? React.me...

  • React.memo

    React.memo 为高阶组件。它与 React.PureComponent 非常相似,但它适用于函数组件,但不...

  • React Hooks

    前言 React中组件分为两大类:Class类式组件、函数式组件 React v16.8以前: Class类式组件...

网友评论

      本文标题:React中_函数(memo)和class(PureCompon

      本文链接:https://www.haomeiwen.com/subject/xumqqrtx.html