> Что такое pure component и как создать его на примере функционального компонента в React (React)
Уровень: junior · Роль: frontend · Категория: Технические вопросы
Компании: Aston
Стек: React
> Пример ответа
Pure Component - это компонент, который выполняет поверхностное сравнение (shallow comparison) своих пропсов и состояния перед повторным рендером. Если значения не изменились, компонент не перерисовывается, что повышает производительность за счёт избегания лишних рендеров.
В функциональных компонентах React аналогом Pure Component является обёртка React.memo. Она принимает компонент и опциональную функцию сравнения пропсов. Пример:
JSXimport React from 'react';const MyComponent = ({ name, age }) => {console.log('Рендер MyComponent');return (<div><p>Имя: {name}</p><p>Возраст: {age}</p></div>);};// Оборачиваем в React.memo для поверхностного сравнения пропсовexport default React.memo(MyComponent);
Если нужно кастомное сравнение, передаём вторым аргументом функцию:
JSXexport default React.memo(MyComponent, (prevProps, nextProps) => {return prevProps.name === nextProps.name && prevProps.age === nextProps.age;});
Важно: React.memo сравнивает только пропсы, не затрагивая состояние или контекст. Используйте его для компонентов, которые часто получают одни и те же пропсы, чтобы избежать ненужных рендеров.
> Похожие задачи по frontend
Каковы преимущества Material UI
Что происходит после создания work tree и current tree в React
Является ли изменение пропсов триггером ререндеринга в React
Что такое компоненты, модули, сервисы, интерцепторы и директивы в Angular?
> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?
Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью