Обработчик данных отправки не показывает данные из дочерних компонентов формы - PullRequest
1 голос
/ 02 июня 2019

возможно название здесь, но позвольте мне объяснить проблему.У меня есть форма в реакции, и я хочу сделать четыре разных раздела.Я хочу, чтобы все отправили, поэтому мы решили обернуть четыре подформы в основную форму.Когда мы отображаем все четыре подкомпонента в оболочке Form, как показано ниже:

    handleSubmit = (data) => {
    console.log('data', data)
  };
<Form data={res}>
              <GridContainer spacing={24}>
                <GridItem sm={3}>
                  <Form.Field
                    name="type"
                    label="ΤΥΠΟΣ ΑΚΙΝΗΤΟΥ"
                    fullWidth
                    disabled
                  />
                </GridItem>
                <GridItem sm={3}>
                  <Form.Field
                    name="registrationType"
                    label="ASSET CLASS"
                    fullWidth
                  />
                </GridItem>
              </GridContainer>
.....
</Form>

console.log показывает все данные.Но когда я решаю разбить на части четыре субформы, просто так:

handleSubmit = (data) => {
        console.log('data', data)
      };
    <Form data={res}>
                  <SubFormGrid>
    .....
    </Form>

, где SubFormGrid содержит этот код:

<GridContainer spacing={24}>
                <GridItem sm={3}>
                  <Form.Field
                    name="type"
                    label="ΤΥΠΟΣ ΑΚΙΝΗΤΟΥ"
                    fullWidth
                    disabled
                  />
                </GridItem>
                <GridItem sm={3}>
                  <Form.Field
                    name="registrationType"
                    label="ASSET CLASS"
                    fullWidth
                  />
                </GridItem>
              </GridContainer>

console.log показывает пустой объект.Вы знаете, почему это происходит?HandleSubmit вызывается с помощью кнопки:

<Button onClick={this.handleSubmit}/>

SubFormGrid содержит вышеуказанный код, как я объяснил в другом компоненте, и я вызываю его внутри формы

...