深层对象的默认函数参数值

时间:2019-07-05 14:53:50

标签: typescript

我在下面有此表单,我希望拥有部分对象的默认值,这意味着如果我通过一封电子邮件,具有一个属性和两个默认值,结果将包括默认参数,而不会覆盖整个对象。我想念什么?

const defaultEmail = {
  label: 'Email Address',
  id: 'form-login-email-address'
}

const defaultPassword = {
  label: 'Password',
  id: 'form-login-email-address',
  type: "password",
}

const defaultProps = {
  email: defaultEmail,
  password: defaultPassword,
}

const FormLogin = ({
  email = defaultEmail,
  password = defaultPassword,
  onSubmit,
}: {
  email: TextInputProps,
  password: TextInputProps,
  onSubmit?: (event: FormEvent<HTMLFormElement>) => void,
} = defaultProps) => ....

意思是,如果我只通过onChange

    <FormLogin {...{
      email: {onChange: action('email changed')},
      // password: {onChange: action('password changed')},
      onSubmit: action('password changed')
    }}/>

我希望组件prop具有props.email和其他未输入的默认值。

正在寻找有关“嵌套对象参数默认为打字稿”的文档或类似的内容。

0 个答案:

没有答案