HTML输入autoFocus属性无法使用React.renderToStaticMarkup呈现

cua*_*man 4 html5 reactjs

如何使用ReactJS组件将自动对焦 HTML属性包含到输入中?

我尝试使用包含自动聚焦输入的React元素

<input className='EI-input' autoFocus='true' tabIndex='0'
                               name='username' type='text'
                               ref='inputUser' autoComplete='on'
                               placeholder='email' />
Run Code Online (Sandbox Code Playgroud)

但是当渲染到静态标记时,我没有看到在浏览器中呈现自动聚焦属性(使用Chrome和FireFox中的devTools进行检查)

const jsx = React.renderToStaticMarkup(<InputWithAutoFocus />);
console.log(jsx); // I don't see the autofocus attribute in the input
Run Code Online (Sandbox Code Playgroud)

我也尝试过autoFocusautoFocus ='on'自动对焦.这些似乎都不起作用.

根据ReactJS文档,autoFocus应该可以工作.

kno*_*ody 6

由于不同浏览器的解释,不支持此功能:

"我们"决定不使用它,因为每个浏览器都有它们应该如何工作的独特解释,实际上所有浏览器都采用不同的方式.重载它并同时将其渲染到标记似乎是一个坏主意.

这里看到完整的主题