我对 Typescript 相当陌生,并使用 Typescript 创建了一个 React 应用程序。我在将道具从一个组件传递到另一个组件时遇到了一些麻烦。我在下面包含了一个示例,我的问题是关于组件的默认道具。
当我在父组件中调用子组件时,出现错误:
Type '{}' is missing the following properties from type 'IProps': className, disabled ts(2739)
我认为因为我的子组件上有默认道具,所以当从其他组件调用该组件时,它们会填充任何缺失的道具。
我知道我可以IProps使用我的子组件的界面中的单个道具可选,className?: string但这不是我正在寻找的解决方案,因为它提出的问题多于解决的问题。
当我从另一个组件(如下所示)调用子组件时,我不想不必注意每个默认道具,对于某些组件,我有很多道具:
<Child class={''} disabled={false} />
我确信对此有一个相当简单的解决方案,但到目前为止我找不到任何方向。欢迎任何建议或方向。
// Parent component:
import React, { FC } from 'react'
import Child from './child'
const Parent: FC = () => {
return (
<Child />
)
}
export default Parent
// Child component:
import React, { FC } from 'react'
interface IProps {
className: string
disabled: …Run Code Online (Sandbox Code Playgroud)