«JSX» не определен

#reactjs #typescript #react-native #jsx

Вопрос:

Это мой компонент:

введите описание изображения здесь

И есть две ошибки, которые показывает машинопись

введите описание изображения здесь

Как я могу сообщить этой функции, что ей будет передано свойство children, которое будет элементом JSX или массивом элементов JSX

Комментарии:

1. Вы пробовали печатать children: React.ReactNode вместо этого?

2. 1. Не размещайте изображения кода, размещайте текст, который мы можем скопировать/вставить для запуска самостоятельно. Это хорошо описано в справочном центре и в экскурсии. 2. Вы нигде не определяете JSX, поэтому, естественно, он не определен. 3. Этот тип не является правильным типом для детской опоры, React.ReactNode на что правильно указывает @gqstav, и вы могли бы обнаружить это, погуглив «тип детей, реагирующих на машинопись» или что-то в этом роде. 4. Вы можете избежать необходимости явно вводить стандартные реквизиты react, введя свой компонент как a React.FunctionComponent , как правильно указывает Маджид М. в ответе ниже.

3. JSX определяется пакетом react, убедитесь, что вы установили пакеты:)

4. чтобы добавить детей в набор реквизитов, вы можете использовать тип PropsWithChildren, например React. PropsWithChildren<просмотры>

Ответ №1:

Попробуйте определить свой компонент как FunctionComponent от react . У него есть собственная children собственность:

 import React, {FunctionComponent } from 'react';
type Props = ViewProps;
export const Component: FunctionComponent<Props> = (props) => {
  return <>
      {props.children}
  </>;
};