Оптимизация производительности React

#reactjs #optimization

Вопрос:

Вместо использования useMemo я просто определяю объект «человек» вне компонента. которые устраняют проблему ненужного повторного запроса для изменения реквизитов

App.js

 import React, { useState } from "react";
import Child from "./Child";

let person = { fname: "mahabub", lname: "shaon" };
export default function App() {
  const [state, setState] = useState(0);
  console.log("rendering parent");

  return (
    <>
      <button onClick={() => setState(state   1)}>click to render</button>
      <Child person={person} />
    </>
  );
}
 

Child.js

 import React from "react";

function Child({ person }) {
  console.log("rendering child");
  return (
    <h1>
      {person.fname} {person.lname}
    </h1>
  );
}
export default React.memo(Child);
 

Это нормально или какие-то недостатки этого подхода?

Комментарии:

1. Проблема в том, что у вас может быть только один экземпляр компонента или данные одинаковы для всех.