Typescript не улавливает неправильный тип в подкомпоненте реагировать - PullRequest
0 голосов
/ 24 октября 2018

Реактивный редуктор:

export interface ParamObj {
    count: number;
    offset: number;
}
...

Тогда у меня есть компонент:

import { ParamObj } from "./MyReducer";

interface ParentProps {
    params: ParamObj;
    handleClick: () => void;
}
class ParentComp extends React.Component<ParentProps, {}> {
    render() {
        return <ChildComp offset={this.props.params.offset} />;
    }
}

В подкомпоненте у меня есть:

interface ChildProps {
    offset: string;
}
class ChildComp extends React.Component<ChildProps, {}> {
    render() {
        return <div>{this.props.offset}</div>
    }
}

Проблема в том,что подкомпонент не выдает ошибку, даже если тип param1 не соответствует типу из родительского компонента.Ожидаемое поведение заключается в том, что он должен сказать, что SubComponent param1 ожидает число, но тип prop является строкой.

Как я могу заставить его распознавать тип из родительского компонента?

EDIT: Добавлен полный код.

1 Ответ

0 голосов
/ 25 октября 2018

Я понял это.Я не знаю, почему TS работает таким образом, но оказывается, что мне нужно было сделать:

interface SubCompProps {
    param1: ParamObj["param1"];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...