Sobes.tech
Middle+

Come fare in modo che un componente con 5 props ignori i cambiamenti di tre di esse e si ri-renderizzi solo quando due cambiano?

sobes.tech AI

Risposta dell'AI

Чтобы компонент с 5 пропсами перерендеривался только при изменении двух из них, можно использовать кастомное сравнение пропсов. Например, в React это делается с помощью React.memo и функции сравнения:

const MyComponent = React.memo(function MyComponent(props) {
  // компонент использует props.a и props.b
}, (prevProps, nextProps) => {
  // игнорируем изменения props.c, props.d, props.e
  return prevProps.a === nextProps.a && prevProps.b === nextProps.b;
});

Таким образом, компонент будет перерендериваться только если изменятся a или b. Это повышает производительность, избегая лишних рендеров при изменении несущественных пропсов.