Ошибка машинописи для свойства компонента CardActionArea Material-ui - PullRequest
1 голос
/ 31 мая 2019

Материал-интерфейс Кнопки |В документации сторонней библиотеки маршрутизации говорится, что нам нужно сделать так, чтобы адаптер инкапсулировал компонент react-router-dom/Link в кнопку.Но, делая то же самое с CardActionArea (который, согласно документам, является BaseButton), выдает следующую ошибку Typescript:

main.tsx:24:10 - error TS2322: Type '{ children: Element; component: ForwardRefExoticComponent<LinkProps & RefAttributes<HTMLAnchorElement>>; to: string; }' is not assignable to type 'IntrinsicAttributes & CardActionAreaProps & { children?: ReactNode; }'.
  Property 'component' does not exist on type 'IntrinsicAttributes & CardActionAreaProps & { children?: ReactNode; }'.

14         <CardActionArea component={AdapterLink} to="/foo">
            ~~~~~~~~~~~~~~

Тем не менее код работает.Вот минимальный пример, показывающий сообщение об ошибке в строке 14:

Примечание: в строке 6 есть ошибка, потому что Codesandbox запускает eslint в файле TypeScript, поэтому просто игнорируйте это.

https://codesandbox.io/s/heuristic-bash-w17bu

1 Ответ

1 голос
/ 04 июня 2019

Это работает для меня, и у меня нет ошибок в TypeScript:

<CardActionArea {...{ component: Link, to }}>
...