2016-12-01 4 views
2

В настоящее время я реализую Redux-Form, чтобы добавить InputFields в мое приложение. Есть ли способ вручную сосредоточиться на входе дочернего компонента?Реакция фокуса на вход дочерних компонентов

Код для добавления компонента ребенка:

<Field name="Quantity" ref="quantity" onKeyPress={(event) => this.handleKeyPress('inventory', event)} component={ InputField }/> 

Код для дочернего компонента:

render() { 
    const { input } = this.props; 
    const inputClass = classNames({ 'parsley-error': this.props.meta.touched && this.props.meta.error }, 'form-control') 
return (
    <div> 
     {this.props.meta.touched && this.props.meta.error && <span className="parsley-error-message">{this.props.meta.error}</span>} 
     <Input {...input} className={inputClass} onKeyPress={this.props.onKeyPress} standalone type="text" placeholder={this.props.placeholder}/> 
    </div> 
    ) 
} 

Текущая попытка реализации в фокусе:

handleKeyPress(value, event){ 
    if(event.charCode == 13){ 
    this.refs["inventory"].getDOMNode().focus(); 
    } 
} 

я жёстко сосредоточиться инвентарь только для цели тестирования

ответ

1

Внутри вашего входного компонента вы должны быть в состоянии сделать:

`<input type="text" autoFocus />` 

Обратите внимание на F должна быть заглавной. Я не тестировал это на вновь созданных компонентах, но теоретически он должен работать.

Смежные вопросы