Как использовать реагирование на выбор реквизита - PullRequest
0 голосов
/ 17 января 2019

Я пытаюсь написать компонент, обертывающий AsyncSelect, однако в этом случае их типизация для реквизита имеет общий характер, и я не уверен, как это реализовать.

Вот мой код:

export class PipTagSelect extends React.Component<AsyncProps> {
    constructor(props:AsyncProps ) {
        super(props);
    }

    render() {
        return (
            <AsyncSelect
                isMulti
                cacheOptions
                {...this.props}
            />
        );
     }
}

Компилятор выдает ошибку AsyncProps<OptionType> требует один аргумент типа. Это имеет смысл при рассмотрении определений типов.

Однако мне никогда не приходилось предоставлять аргумент типа реквизиту при переносе компонента. Я не уверен, что я должен делать.

1 Ответ

0 голосов
/ 17 января 2019

сделайте свой класс как общий

 export class<T> PipTagSelect extends React.Component<AsyncProps<T>> {
    constructor(props:AsyncProps<T>) {
        super(props);
    }

    render() {
        return (
            <AsyncSelect
                isMulti
                cacheOptions
                {...this.props}
            />
        );
     }
 }

проверить это на github

...