正确键入函数对象参数TypeScript



我在代码setTouched({ ...touched, [name]: true });中的某个地方有一个函数,它接受一个对象。name属性是动态的,可以是"电子邮件"、"密码"或其他类型"触摸"对象可以为空。这是我的界面:

interface IInputFieldProps {
setTouched: () => void;
}

目前,它只是一个不返回任何内容的函数。我试过setTouched: ({[key: string]: boolean}) => void。看起来不起作用。如何使用TypeScript将对象正确地键入为函数参数?

({[key: string]: boolean})不包含类型,而是一个无效的析构函数。类型必须位于冒号的右侧:

interface IInputFieldProps {
setTouched: (data: {[key: string]: boolean}) => void;
}

最新更新