反应减速器:
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类型是一个字符串。
如何从父组件中识别类型?
编辑: 添加了完整的代码。
答案 0 :(得分:0)
我知道了。我不知道为什么TS这样工作,但事实证明我需要这样做:
interface SubCompProps {
param1: ParamObj["param1"];
}