Я новичок в Реагировать, и я очень смущен и постоянно думаю об этом днем и ночью, и почти все мои волосы упали и все еще падают, поэтому мы всегда класс расширяет React.Component при создании компонента с классом.
Но в функциональная составляющая и в других методах мы не делаем ничего подобного, чтобы поместить созданный компонент в класс React.Component. Итак, главный вопрос заключается в том, что такое класс React.Component, почему мы всегда добавляем к нему новые компоненты в качестве дочерних, используя расширяет, и почему мы не можем создавать компоненты в react native без использования расширяет в компоненте класса или без расширения класса React.Component. Итак, что это за класс React.Component, что происходит внутри Реагировать под капотом, каков сценарий?
Я буду очень-очень благодарен человеку, который ответит на мой вопрос с примерами и легким подходом.
@Bhojendra Rauniyar - я не получил вашего комментария. Пожалуйста, отредактируйте
Внутри Component есть много хуков, таких как render, componentDidMount и т. д., И для их использования вы будете использовать компонент React.
Кажется, вам нужно изучить некоторые базовые вещи, например, что такое class и что такое inheritance.
@Thomas - Да, меня тоже смущает супер(), потому что я могу использовать, например, this.props.name, не вызывая супер(), тогда зачем использовать супер()?
То, что вы не знаете, не имеет ничего общего с реакцией, но это базовые вещи программирования, которые вам нужно изучить. Они даже не относятся к JS; Вы задаете вопрос, похожий на "что такое функция и почему я должен ее использовать" Sry, но мой лучший ответ: Вам нужно изучить некоторые основы. Узнайте, что такое классы и что такое наследование.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


если вы расширяете класс React.Component, вы можете использовать жизненный цикл компонента, который можно использовать для монтирования и размонтирования.
Обратитесь к этому https://reactjs.org/docs/react-component.html
Компоненты React - это просто функции.
Например, вы можете визуализировать функциональный компонент react без импорта react, если вы не используете JSX.
Если вы хотите использовать JSX и записать свой HTML в файл js, вам необходимо импортировать react.
Если вы хотите написать компонент, который использует преимущества методов жизненного цикла, вам потребуется продлевать класс Component по умолчанию. Класс Component содержит методы жизненного цикла, и его не следует путать с другими общими компонентами react, такими как функциональные компоненты или любой компонент, который вы можете написать. Этот Component относится к реализации определенного класса, поддерживаемой react.
Расширение Component предоставит вам доступ к таким функциям, как componentDidMount, componentDidUpdate, componentWillUnmount и render.
Обычно для уровня представления вы будете использовать компонент без сохранения состояния. И вы будете использовать компонент с сохранением состояния (компонент на основе класса) для поведенческого уровня (компоненты контейнера). Компоненты контейнера могут содержать множество действий и допускают множество ловушек, которые вы хотите использовать. Например, render(), componentDidMount() и др.
Вы можете прочитать блог, написанный создателем React Дэном Абрамовым.
Далее вы можете прочитать шотландский блог.
Но прежде чем продолжить работу с React, я настоятельно рекомендую вам изучить возможности JavaScript и ES6 +. Есть много материалов для изучения. Но начиная с MDN будет хорошо.
Итак, это означает, что реакция предоставила множество способов создания и рендеринга компонентов, либо создание компонента с помощью функции, либо с помощью класса, либо с помощью других методов, верно? И все это обрабатывается, сериализуется и в конце попадает в DOM React? Верно ?
React использует свой собственный, который называется ReactDOM.
Итак, это означает, что реакция предоставила множество способов создания и рендеринга компонентов, либо создание компонента с помощью функции, либо с помощью класса, либо с помощью других методов, верно? И все это обрабатывается, сериализуется и в конце попадает в ReactDOM? Верно ?
Извините, я не совсем понял ваш вопрос. Но, взглянув на мой другой пост, я думаю, что ваш запрос должен удовлетворить ваш запрос: stackoverflow.com/questions/52460185/…
Это потому, что вы можете использовать метод React Component.