【问题标题】:Properly type function object argument TypeScript正确键入函数对象参数 TypeScript
【发布时间】:2020-08-12 18:08:52
【问题描述】:

我在代码setTouched({ ...touched, [name]: true }); 的某处有一个函数,它接受一个对象。 name 属性是动态的,它可以是“email”、“password”或其他。 'touched' 对象可以为空。 这是我的界面:

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

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

【问题讨论】:

    标签: reactjs typescript


    【解决方案1】:

    ({[key: string]: boolean}) 不包含类型,而是包含无效的解构。类型必须在冒号的右边:

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

    【讨论】:

      猜你喜欢
      • 2021-06-15
      • 2018-08-07
      • 1970-01-01
      • 2022-01-23
      • 1970-01-01
      • 2019-09-30
      • 2022-07-23
      • 2021-11-27
      • 2021-01-29
      相关资源
      最近更新 更多