类型错误:无法读取未定义 React 的属性“匹配”

我有两个。在寄存器中,表单函数有效,但在 createEvent 中则不然。我正在用于管理我的表单。match()react-final-form


注册:


const emailReg = value => (value.match(/^[a-z\d]+[\w\d.-]*@(?:[a-z\d]+[a-z\d-]+\.){1,5}[a-z]{2,6}$/) ? undefined : `Wrong e-mail format`);


...


<Field

            name="email"

            validate={composeValidators(required, emailReg)}

          >

            {({ input, meta }) => (

              <div className={styles.registerFormField}>

                <input

                  {...input}

                  type="email"

                  placeholder="E-mail"

                  className={styles.registerFormInput}

                />

                {meta.error && meta.touched && (

                  <span className={styles.registerError}>{meta.error}</span>

                )}

              </div>

            )}

          </Field>

创建事件 :


const timeReg = value => (value.match(/^(20|21|22|23|[01]d|d)(([:][0-5]d){1,2})$/) ? undefined : `Wrong time format`);


...


  <Field

            name="timeStartEvent"

            validate={composeValidators(timeReg)}

          >

            {({ input, meta }) => (

              <div className={styles.createEventFormField}>

                <label className={styles.createEventFormLabel}>

                  <img

                    src={TimeIcon}

                    className={styles.createEventFormIcon}

                  />

                </label>

                <input

                  {...input}

                  type="text"

                  placeholder="Poczatek"

                  className={styles.createEventFormInput}

                  style={{

                    width: "40%",

                    marginRight: "0",

                    borderRight: "1px solid #ddd",

                    borderRadius: "15px 0 0 15px"

                  }}

                />

                <Field

                  name="timeEndEvent"

                  validate={composeValidators(timeReg)}

                >



跃然一笑
浏览 90回答 1
1回答

aluckdog

您没有将值传递给 ,请验证该值timeRegconst timeReg = value =>&nbsp; // check if value exists&nbsp; value && value.match(/^(20|21|22|23|[01]d|d)(([:][0-5]d){1,2})$/)&nbsp; &nbsp; ? undefined&nbsp; &nbsp; : `Niewłaściwy format`;或传递一个值以点赞timeReg<Field&nbsp; &nbsp;name="timeStartEvent"&nbsp; &nbsp;validate={composeValidators(() => timeReg(value))}&nbsp;>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript