Каков правильный тип машинописи для реагирующих детей? - PullRequest
0 голосов
/ 15 апреля 2020

Я пытаюсь правильно набрать реквизиты для компонента, который отображает дочерние элементы:

type Props = {
    children: any
}

const MyComponent: FunctionComponent<Props> = () => (React.Children.map(children, someMapingFunction);

Я использовал JSX.Element, но это не совсем правильно.

Ответы [ 2 ]

1 голос
/ 15 апреля 2020

Просматривая код под DefinitiveTyped , кажется, что children напечатано как ReactNode.

Пример:

type Props = {
    children: ReactNode
}

const MyComponent: FunctionComponent<Props> = () => (React.Children.map(children, someMapingFunction);

Примечание : тип ReactNode можно найти в пространстве имен React:

import React from 'react';

let someNode: React.ReactNode;
0 голосов
/ 16 апреля 2020

На самом деле вам не нужно указывать children, если вы используете React.FunctionComponent.

Например, следующие коды компилируются без ошибок:

const MyComponent: React.FC<{}> = props => {
  return props.children
}
...