为什么我不能在input元素中使用传递的refs



我正试图关注表单内部的错误字段,我正在使用ref来做到这一点,但不知何故,ref总是返回null,我得到了错误,我想使用/传递这个ref来关注错误字段,这里的错误存储在我没有包含在代码中的状态中

这是的基本代码

class Form extends Component {
constructor(props) {
super(props);
this.textInput = React.createRef();
this.getErrors = this.getErrors.bind(this);
}
componentWillUnmount() {
/////
}
renderSubmitAction() { 
if(errors) {

this.textInput.current.focus();

}
}

render() {
return (
<View key={propertyName}>
<FormInput
id={id_prefix + propertyName}
key={propertyName}
ref={this.textInput}
/>
</View>

)
const submitButton = this.renderSubmitAction();
return (
<View key={this.state.submitId} style={props.style}>
{children}
{props.children}
{submitButton}
</View>
);
}

问题

你正在运行这个:

this.textInput.current.focus();

在此之前:

<FormInput
id={id_prefix + propertyName}
key={propertyName}
ref={this.textInput}
/>

解决方案

我不确定这应该做什么:

const submitButton = this.renderSubmitAction();

但你可能想使用这个:

const submitButton = this.renderSubmitAction;

相关内容

  • 没有找到相关文章

最新更新