Встречается на собеседованиях • сегодня

Сможешь ли переписать классовый компонент на функциональный

Да, переписать классовый компонент на функциональный можно. Основные отличия: 1. Вместо `this.state` используем `useState`: ```jsx // Классовый this.state = { count: 0 }; // Функциональный const [count, setCount] = useState(0); ``` 2. Жизненные циклы заменяем на `useEffect`: ```jsx // componentDidMount useEffect(() => { // код }, []); // componentDidUpdate useEffect(() => { // код }, [dependency]); // componentWillUnmount useEffect(() => { return () => { // cleanup }; }, []); ``` 3. Методы класса становятся обычными функциями внутри компонента. Контекст (`this`) больше не нужен. Пример перевода: ```jsx // Классовый class Counter extends React.Component { state = { count: 0 }; increment = () => this.setState({ count: this.state.count + 1 }); render() { return ; } } // Функциональный function Counter() { const [count, setCount] = useState(0); const increment = () => setCount(count + 1); return ; } ``` Функциональные компоненты проще, компактнее и поддерживают хуки.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы