Отсутствует тело конструктора внутри класса

Я читаю определение типа реакции в здесь. Внутри кода я нашел внутри class Component {} (в строке 396), есть конструктор без тела, как показано ниже (строка 435):

constructor(props: Readonly<P>); 

Почему внутри класса нет реализации конструктора. Может кто-нибудь объяснить?

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
0
194
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

вы читаете index.d.ts

его единственное определение машинописного текста для реализации javascript.

читать больше здесь

Большое спасибо, а где же будет собственно файл реализации?

HKIT 19.06.2019 09:31

d.ts можно сгенерировать из .ts с помощью компилятора typescript. или это просто написано другим человеком для чистого файла javascript. поэтому реализация будет в .js/.ts, то, что вы читаете, - это определение типа для библиотеки реагирования, поэтому, я думаю, это будет github.com/facebook/реагировать/дерево/мастер/пакеты/реагировать

Juraj Kocan 19.06.2019 09:37
github.com/facebook/react/blob/master/packages/react/src/… это реализация вашего компонента
Juraj Kocan 19.06.2019 09:38

если вы установили реакцию, вы можете перейти к node_modules/react/cjs/react.development.js, и там есть именно та версия, которую вы используете.

Juraj Kocan 19.06.2019 09:42

Поскольку React — это то, что создает для вас экземпляр класса, определение типа просто информирует вас о том, что будет передано конструктору, если вы решите предоставить его.

Это также полезно, поскольку указывает, как вызывать super(). Если бы вы создали конструктор, вам нужно было бы передать полученные реквизиты супер, даже если они не нужны вашему классу, например.

constructor(props) {
  super(props);

  // your constructor logic here
}

Другие вопросы по теме