если вы хотите, чтобы ваш компонент принимал какие-либо реквизиты на основе интерфейсов, вы можете сделать это:
const Component1: SFC<IAProps & IBProps> = (props) =>
return (
<Component2
{...props} <---IAProps
/>
<Component3
{...props} <--- IBProps
/>
);
}
Обратите внимание: : если требуются не все реквизиты, вы можете использовать дополнительные реквизиты в каждом интерфейсе следующим образом:
interface IAProps {
name: string; // required
age?: number; //optional
}
или если всплывающие окна всех ваших интерфейсов должны быть помечены как необходимые, но вы все равно хотите не использовать их все в своем компоненте, вы можете сделать это:
const Component1: SFC<Partial<IAProps> & Partial<IBProps>> = (props) =>
return (
<Component2
{...props} <---IAProps
/>
<Component3
{...props} <--- IBProps
/>
);
}
что стоит упомянуть, Partial
пометит все реквизиты вашего интерфейса как необязательные