Когда использовать компонент класса, а когда использовать функциональный компонент - PullRequest
1 голос
/ 08 октября 2019

Я новичок, чтобы реагировать. Когда я иду на собеседование, меня спрашивают, когда использовать компонент класса, а когда использовать функциональный компонент?. Я не знаю ответа на этот вопрос. Я знаю разницу междудва.Как лучше всего ответить на этот вопрос?

Ответы [ 4 ]

1 голос
/ 08 октября 2019

В современную эпоху пост-хуков ответ прост: вы всегда используете компоненты функций.

0 голосов
/ 08 октября 2019

Когда использовать функциональный компонент (без сохранения состояния)

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

  • Иногда их называют «тупыми» или «не имеющими состояния» компонентами, поскольку они просто принимают данные и отображают их в некоторыхформирования;то есть они в основном отвечают за отображение пользовательского интерфейса.

  • Методы жизненного цикла React (например, componentDidMount) нельзя использовать в функциональных компонентах.

  • В функциональных компонентах не используется метод рендеринга.

  • Они в основном отвечают за пользовательский интерфейс и обычно являются только презентационными (например, компонент Button).

  • Функциональные компоненты могут принимать и использовать реквизиты.

  • Функциональные компоненты следует отдавать предпочтение, если вам не нужно использовать состояние React.

Когда использовать компонент на основе класса (с состоянием)

  • Компоненты класса используют класс ES6 и расширяют класс Component в React.
  • Иногда их называют «интеллектуальными» или «состоящими из состояния» компонентами, поскольку они имеют тенденцию реализовывать логику и состояние.
  • Методы жизненного цикла React могут использоваться внутри компонентов класса (например, componentDidMount).
  • Вы передаете реквизиты компонентам классаи получить к ним доступ с помощью this.props
0 голосов
/ 08 октября 2019

Используйте компоненты класса, когда вам нужно сохранить состояние уровня компонента или использовать компоненты жизненного цикла. Функциональные компоненты теперь могут использовать состояние и некоторые методы жизненного цикла с hooks , так что это зависит от личных предпочтений.

Функциональные компоненты считаются более легкими для чтения и меньше кода, чем классы. Они должны использоваться в презентационных компонентах (небольших компонентах, имеющих отношение к тому, как все выглядит, а не как это работает).

0 голосов
/ 08 октября 2019

Просто объясните разницу. Вы сказали, что знаете, в чем разница, поэтому скажите им, что это такое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...