Следует ли по-прежнему использовать компоненты класса, когда в React существуют функциональные компоненты с перехватчиками? - PullRequest
0 голосов
/ 19 июня 2020

Привет, я новичок в React. Я начал изучать React за последние 2 недели, и сейчас я создаю веб-сайт, используя стек MERN с другом. Я использовал компоненты класса всякий раз, когда видел необходимость в поддержании состояний, но я только что обнаружил, что хуки могут имитировать c классы React и предположительно сокращают длину кода, повышают удобочитаемость и создают более удобный для сопровождения код. Мне просто интересно, следует ли использовать компоненты класса в React с 2020 года, когда существуют хуки? Какие варианты использования охватывают классы, не охваченные функциональными компонентами?

Ответы [ 2 ]

0 голосов
/ 19 июня 2020

это предпочтение, но сообщество движется в сторону хуков. Хуки + другие функции могут в значительной степени покрыть все, что сделано в хуках

например,

useEffect => componentDidMount, componentDidUpdate, componentWillMount

useState => this.setState({})

React.memo => shouldComponentUpdate

в классах кое-что проще, чем в хуках. как и второй аргумент в setState, это обратный вызов, обеспечивающий изменение состояния перед выполнением. это возможно в хуках, но это не так чисто

0 голосов
/ 19 июня 2020

Хуки предназначены для полной замены компонентов класса. From response docs ,

Мы планируем, что хуки будут охватывать все существующие варианты использования для классов , но в обозримом будущем мы продолжим поддерживать компоненты класса.

Чтение указанной выше страницы о стратегии усыновления и намерениях за крючками - было бы отличным местом, чтобы понять и сформировать мнение.

Лично я люблю зацепки. И не использовал компоненты класса с тех пор, как были введены хуки. Мне еще предстоит найти вариант использования, в котором мне нужно было бы использовать компонент класса, потому что хуки не могли удовлетворить просьбу.

...