Junior — Middle
76
React-də sinif və funksional komponentlər arasında əsas fərqlər nələrdir və onların üstünlükləri və çatışmazlıqları nələrdir?
AI-dan cavab
sobes.tech Süni İntellekt
Классовые компоненты в React — это компоненты, основанные на ES6 классах, которые имеют собственный state и жизненный цикл через методы вроде componentDidMount. Функциональные компоненты — это функции, которые возвращают JSX. С появлением хуков функциональные компоненты могут управлять состоянием и побочными эффектами.
Преимущества функциональных компонентов:
- Проще и короче писать
- Легче тестировать
- Используют хуки для управления состоянием и эффектами
- Меньше проблем с this
Недостатки классовых компонентов:
- Более громоздкий синтаксис
- Сложнее работать с this
Пример функционального компонента с хуком useState:
import React, { useState } from 'react';
function Counter() {
const [count, setCount] = useState(0);
return (
<div>
<p>Счётчик: {count}</p>
<button onClick={() => setCount(count + 1)}>Увеличить</button>
</div>
);
}
Таким образом, функциональные компоненты сейчас предпочтительнее для новых проектов.