React Stateless Component не компилируется в машинописи - PullRequest
0 голосов
/ 16 декабря 2018

Я довольно долго работал с React JS & Flow, а недавно перешел на машинопись.Я не уверен, почему машинописная работа жалуется на определение компонента без состояния.

Источник

interface Test2Prop {
  names : string[];
}

const TestComponent: SFC<TestProp> = (props: TestProp) => {
    return (
        props.name.map((val, idx) => <h3 key={idx}>{`APPENDING-${val}`}</h3>)
    );
}

Ошибка

[ts]
Type '(props: TestProp) => Element[]' is not assignable to type 'FunctionComponent<TestProp>'.
  Type 'Element[]' is not assignable to type 'ReactElement<any>'.
    Property 'type' is missing in type 'Element[]'. [2322]

И я не уверен, почему использование React.Fragment устраняет ошибку.

interface Test2Prop {
  names : string[];
}

const Tests : React.SFC<Test2Prop> = (props : Test2Prop) => {
  return (
    <React.Fragment>
    { props.names.map(name => <h1>{name}</h1>) }
    </React.Fragment>
  ); 
}

Я не хочу использовать React.Фрагмент, как это не решение, а хак, как я понимаю.

Stackblitz здесь

...