Вопросы, которые могут задать на собеседовании Senior React Developer.
Проверьте себя без помощи поисковиков!
❓Как оптимизировать производительность React-приложения?
Пример кода:
const ExpensiveComponent = React.memo(({ value }) => {
return <div>{value}</div>;
});
const App = () => {
const [count, setCount] = React.useState(0);
const memoizedValue = React.useMemo(() => count * 2, [count]);
return (
<div>
<ExpensiveComponent value={memoizedValue} />
<button onClick={() => setCount(count + 1)}>Increment</button>
</div>
);
};Здесь React.memo предотвращает лишние рендеры ExpensiveComponent, а useMemo мемоизирует значение.
❗️Оптимизация производительности в React включает несколько подходов:
- Использование React.memo для мемоизации компонентов и предотвращения лишних рендеров.
- Использование useCallback и useMemo для мемоизации функций и значений.
- Ленивая загрузка компонентов с помощью React.lazy и Suspense.
- Разделение кода (code splitting) для уменьшения размера начального бандла.
Ссылка на документацию Optimizing Performance
