[打字稿 + 反应]。 React TypeScript 组件可以是 JS 功能组件的父级吗?

时间:2021-04-02 22:20:55

标签: javascript reactjs typescript

我们尝试在 React 项目中从 JS 迁移到 TS,我们有很多混合连接 -> TS 组件的 Js 组件父级,反之亦然。当 TS 是 JS 的父级时,我遇到了一些问题。我的情况(父母是 tsx,孩子是 js):


interface Props {
  id: String;
  props: Object;
}

const Parent: React.FC<Props> = ({ id, ...props }) => {
  const [isDetailEdit, detailEditControls] = useBooleanControls(false);
  return <Child id={id} onEditCancel={detailEditControls.setFalse}
};

export default Parent;

系统抛出异常记录:

Type '{ props: Object; children?: ReactNode; selected: String; onEditCancel: any; }' is missing the following properties from type '{ id: any; onEditCancel: any; state: any; setState: any; }': state, setState  TS2739

子组件有输入 props 参数:id、onEditCancel、state、setState。

我是否正确地认为子组件必须是 tsx 并具有用于输入道具参数的适当接口?或者有什么方法可以连接Parent.tsx和Child.js?

0 个答案:

没有答案