Я пытаюсь понять, как метод повторного выбора createStructuredSelector
работает в Typescript. Я часто вижу эту схему:
export interface SomeProps {
readonly property1: string;
readonly property2: boolean;
readonly property3: number;
}
export interface SomeOwnProps {
readonly property3: number;
}
export const someSelector = createStructuredSelector<
SomeState,
SomeOwnProps,
SomeProps
>({
property1: property1Selector,
property2: property2Selector,
property3: (_, props) => props.property3
});
Я не понимаю назначения типов внутри угловых скобок. Я думаю, что SomeState
— это состояние хранилища Redux, SomeOwnProps
— реквизиты, которые были переданы родительским компонентом, а SomeProps
— все реквизиты, которые использует этот компонент. Но в чем разница между SomeOwnProps
и SomeProps
и зачем нужны оба? Почему вы не можете просто использовать SomeProps
, поскольку он также содержит свойства, определенные в SomeOwnProps
? Спасибо!