Реагировать - избыточная форма - невозможно ввести после сопоставления значения свойства - PullRequest
0 голосов
/ 25 марта 2019

Я использую избыточную форму, значение текстового поля не обновляется при вводе, то есть я не могу печатать в поле ввода.

Примечание : Redux-dev регистрирует событие при вводе с клавиатуры, но содержимое текстового поля не обновляется

import React from 'react';
import { Field, reduxForm } from 'redux-form';

class ExamSettingForm extends React.Component {

  renderInput = ({input}) => {
    console.log(input);
    return (
      <input
        type="text"
        onChange = {input.onChange}
        value = {input.value}/>
    );
  }

  render() {
    return(
      <form>
        <Field
          name="description"
          component={this.renderInput}
        />
      </form>
    );
  }
}

export default reduxForm({
  form: 'editExamSetForm'
})(ExamSettingForm);

Как только ввод обновляется с помощью свойства " value ", я не могу что-либо ввести в поле ввода. Я пробовал синтаксис

<input {...input}/>

1 Ответ

0 голосов
/ 25 марта 2019

Я вижу, вы уничтожаете input из props в вашем renderInput методе. Когда вы использовали <input {...input}/> что там было input? Это должен быть весь props объект:

class ExamSettingForm extends React.Component {
  renderInput = (props) => {
    return (
      <input {...props} />
    );
  }

  render() {
    return(
      <form>
        <Field
          name="description"
          component={this.renderInput}
        />
      </form>
    );
  }
}
...