TS崩溃并显示错误:
错误:(8,20)TS7031:绑定元素“ on”隐式具有“ any”类型。
错误:(8,24)TS7031:绑定元素“子级”隐式具有“任意”类型。
我具有以下功能。我给它传递了两个参数。
//
function On({on, children}) {
return (
<div>{on} {children}</div>
)
}
在这种情况下如何指定参数类型?此语法不起作用:
function On({(on as boolean), (children as HTMLElement[])}) {
function On({(on: boolean), (children: HTMLElement[])}) {
function On({on: boolean, children: HTMLElement[]}) {
return (
<div>{on} {children}</div>
)
}
答案 0 :(得分:2)
赞:
function On({on, children} : {on: boolean, children: HTMLElement[] }) {
// your code
}
如果您有整个对象的类型/接口,也可以使用该类型/接口使代码更具可读性:
interface OnOptions {
on: boolean;
children: HTMLElement[];
someOtherProp: string;
}
function On({on, children} : OnOptions) {
// your code
}
答案 1 :(得分:1)
请参阅有关Function declarations 的部分
type myType = { on: boolean, children: HTMLElement[]}
function On({on, children} : myType ) {
// your code
}