Я пытаюсь создать компонент Breadcrumbs
, который на данный момент имеет два props
первый Link
prop является необязательным и по умолчанию установлен как таковой
Breadcrumbs.defaultProps = {
Link: (props) => React.createElement("a", props),
};
второй - breadcrumbs
как объектный массив реквизитов из Link
компонента prop
поэтому, если бы мой компонент хлебных крошек использовался, я мог бы сделать что-то вроде этого
<Breadcrumbs
breadcrumbs={[
{ children: "First", href: "first" },
{ children: "Second", href: "second" },
{ children: "Third", href: "third" },
]}
/>
И если бы я использовал пользовательский компонент Link
, использование выглядело бы примерно так:
import { NavLink } from 'react-router-dom';
<Breadcrumbs
breadcrumbs={[
{ children: "First", to: "first" },
{ children: "Second", to: "second" },
{ children: "Third", to: "third" },
]}
Link={NavLink}
/>
Вот моя poor :-(
попытка связать этот компонент
type Parameters<T> = T extends (...args: infer T) => any ? T : T;
export interface BreadcrumbsProps<C extends React.ElementType<"a"> = any> {
breadcrumbs: Parameters<BreadcrumbsProps["Link"] & { children: any }>[];
/**
* Link
* component to render your link
*/
Link?: React.FC<C>;
}
Дайте мне знать, что вы думаете, благодарю за помощь
Спасибо!