React 大佬有没有, ts 有办法在编译阶段限制 react 子组件的参数类型吗
时间: 2020-08-27来源:V2EX
前景提要
比如有一个 Form 组件,它需要所有子组件都有 name 字段 <Form> <Input name="username"></Input> <Select name="sex"></Select> // 这里写的时候会报错,因为没有 name 字段 <div></div> </Form>
还有就是 form 可以限制子组件参数的类型,比如: interface IUserSchema { username: string sex: 1 | 2 } <Form schema={IUserSchema}> <Input name="username"></Input> <Select name="sex"></Select> // 这里写的时候会报错,因为没有 age 字段 <Input name="age"></Input> </Form>
注意,以上都需要在编译阶段就过不了 interface IProps { children?: // 这里的类型需要怎么写才能实现上面的需求呢? } export const Form: FunctionComponent<IProps> = ({ children }) => { return <form>{children}</form> }

科技资讯:

科技学院:

科技百科:

科技书籍:

网站大全:

软件大全:

热门排行