我在 React 中使用 typescript。每当我将道具传递给函数或将道具解构为 {text} 时,例如我收到一条错误消息,指出“绑定元素‘文本’隐式具有‘任何’类型”。虽然我可以使用 const Example = ({text}:any) => { return () }
或 const Example = ({text}:{text:string}) => { return () }
绕过这个
这对我来说效率不高。我想问你是否可以教我什么好方法来克服这个问题,而无需道具参数本身,而是它的解构版本。
注意:我发现我无法很好地解释我的问题。我使用 Typescript 是因为我想使用它的类型检查功能。给每个道具“任何”类型都可以,但是当我尝试为每个道具赋予自己的类型时,例如 const Example = ({Text, Number, RandomCrap,}: {Text: string; Number: number; RandomCrap: any;}) => {return ();}
它看起来像这样。这是唯一的方法吗?
Answer: 不是像上面那样塞满我的代码,我可以在其他地方定义类型,比如
type PropsType = {Text: string; Number: number; RandomCrap: any;};
并在我的函数中使用它,例如 const Header = ({ Text, Number, RandomCrap }: PropsType) => {return ()}
谢谢大家:)
答案 0 :(得分:0)
您可以为整个 props
对象定义类型:
type PropsType = {
text: string
}
const Example = ({text}: PropsType) => { return () }
// or
const Example1: React.FunctionComponent<PropsType> = ({text}) => { return () }