降档中的 getInputProps

getInputProps in Downshift

当我在使用Downshift渲染输入元素时,做错了吗

<input {...getInputProps({...this.props})} />

或者我应该更具体地说明将对象中的哪些属性传递给 getInputProps?

{...getInputProps({placeholder: this.props.placeholder})}

后来不让我添加其他属性(例如data-testid:controlName)而不更改我的源代码管理以专门查找它

根据 docs,您应该将所有道具作为输入元素的对象传递。我个人没有使用过降档,但我想这会起作用(而且只传递你需要的而不额外 "clutter" 总是很好的做法):

<input {...getInputProps({
    placeholder: this.props.placeholder,
    data-testid: controlName,
    moreProps: this.props.additionalInfo
})} />

但是,为了更直接地回答您的原始问题,只要您在 this.props 中的属性被适当标记(即 placeholder: placeholderValue),传播 [=11 应该没有任何问题=] 作为 getInputProps().

的参数