Formik, поля заполнить валидацию - PullRequest
0 голосов
/ 01 июля 2019

Я работаю с Formik, и у меня возникла проблема с проверкой заполнения поля. Внутри <Formik> в зависимости от состояния я отрисовываю формы с помощью ввода. Если поля не заполнены, сделать кнопку «Далее» отключить. Как сделать проверку только на тех полях, которые отображаются?

displayForms = (values, step) => {

    const formsComponents = {
      1:<Step1 {...values} />
      2:<Step2 education={values.education}/>,
    };

    switch (step) {
      case 1:
        return formsComponents[1];
      case 2:
        return formsComponents[2];
      default:
        return formsComponents[1];
    }
  };

          <Formik
            ref={this.resume}
            initialValues={this.initialValues}
            validate={values => {
              if (values) {
                return !value ? "Required" : "";
              }
            }}
            render={({ values, isValid }) => {
              return (
                <Form>
                  <div className="jobs-resume-panes">
                      {this.displayForms(
                        values,
                        isValid,
                        this.state.activeStep
                      )}
                  </div>                  
                  <div className="jobs-resume-controls">
                      {activeStep === allSteps ? (
                        <button
                          onClick={() => this.submitResume(values, isValid)}
                        >
                          Save
                        </button>
                      ) : (
                        <button
                          disabled={this.state.isDisabled}
                          onClick={this.goNextStep}
                        >
                          Next
                        </button>
                      )}
                    </div>
                  </div>
                </Form>
...