1有三個輸入框:用戶名輸入框(username),郵箱輸入框(email)和年齡輸入框(age)

2如果點擊輸入框獲取焦點后未輸入內(nèi)容,則在輸入框失去焦點后發(fā)出錯誤(error)提示:XXX不能為空,且此時不能提交成功

3如果在輸入框中輸入內(nèi)容不合法,比如用戶名過長(length>5)發(fā)出錯誤提示:不能大于五個字,且此時不能提交成功

4如果在輸入框中輸入內(nèi)容合法但需警告,則提示警告(warn)內(nèi)容,此時雖然發(fā)出警告但仍能提交成功(請區(qū)分和2和3中的區(qū)別)

5在尚未輸入內(nèi)容時(pristine=true)或在提交過程中(submitting=true),禁止使用提交按鈕。在點擊清空按鈕時,調(diào)用reset()方法清空所有輸入框中的內(nèi)容

首先附上form.js的代碼:(這份展示一共兩份代碼:index.js和form.js,index.js的內(nèi)容請看上一篇博客)

Android培訓(xùn),安卓培訓(xùn),手機開發(fā)培訓(xùn),移動開發(fā)培訓(xùn),云培訓(xùn)培訓(xùn)

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

const validate = values => {
  const errors = {}
  if (!values.username) {
    errors.username = '用戶名不能為空'
  } else if (values.username.length > 5) {
    errors.username = '不能大于五個字'
  }
  if (!values.email) {
    errors.email = '郵箱不能為空'
  } else if (!/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i.test(values.email)) {
    errors.email = 'Invalid email address'
  }
  if (!values.age) {
    errors.age = '年齡不能為空'
  }&nbs
        
		

網(wǎng)友評論