如何在反应正在渲染的输入上设置自动对焦

How can I set autofocus on an input that react is rendering

当我在从反应 class 返回的输入上设置自动对焦属性时,生成了以下错误:

 error TS2339: Property 'autofocus' does not exist on type 'HTMLAttributes'

这是违规代码:

return <input type="text" onChange={this.handleChange} value={this.state.text} autofocus/>;

我试过更冗长的 autofocus="autofocus" 但没有成功。

可以使用 React 和 html 来完成吗?我可以用 javascript 设置它,但如果存在的话,我宁愿使用 html 解决方案。

(编辑) 正如 Dominic Tobias 指出的那样,autoFocus(区分大小写)本身就可以解决问题,如果您尝试像这样设置 属性 autoFocus="autofocus",您将收到错误消息:

TS2322  Type 'string' is not assignable to type 'boolean'.

React camel-cases attributes。使用:

 <input type="text" onChange={this.handleChange} value={this.state.text} autoFocus />