0
我的组件有一个子组件列表,每个子组件都有一个文本输入。我的redux商店有一个activeIndex属性,用于存储正在编辑的输入。当它们输入时,redux会适当地分派并更新活动索引。问题在于重点不会改变。这是我原来的(非工作)代码。ReactJS - 绑定焦点
<input autoFocus={this.props.index == this.props.activeInput}
该代码没有正确设置初始焦点,但并没有更新。
我是否正确地认为React的dom-diffing算法不包含焦点信息,因此决定什么都不需要重新渲染?我的解决方案是这样的:
<input ref='input' autoFocus={this.props.index == this.props.activeInput}
componentDidUpdate(){
if (this.props.index == this.props.activeInput){
ReactDOM.findDOMNode(this.refs.input).focus();
}
}
哪些工作。这对我来说是否是理想的解决方案,还是有更完善的“反应”方式?
甜蜜的感谢 - 我会留下来看看是否有其他人想要参加。 –