Проверка уровня поля Redux с помощью собственного кода - PullRequest
0 голосов
/ 27 сентября 2019

Таким образом, мои поля отображаются объектом json. В основном это динамическая форма, которая отображает форму из объекта json.Так что я пытаюсь достичь, чтобы иметь функцию проверки внутри объекта json, которая запускается на определенном поле, если оно пройдено.Для этого я использую валидацию на уровне поля редукционной формы.Так что это мой JSON

 {
"componentKey": "comment",
"componentType": "textArea",
"componentDataType": "alphanumeric",
"componentLabel": "Comment",
"componentPlaceholder": "Comment",
"componentValue": "",
"maxlength": 120,
"required": false,
"show": true,
**componentValidationFuncw**: (value) => {
  // console.log('MOment', moment)

}

Затем я рендеринг поля, как это

{props.item.componentType === 'textArea' && <Field name={props.item.componentKey} item={props.item} component={TextArea} {...props}
        validate={[required, maxLength15]} />}

, и я использую это на textArea, чтобы отобразить ошибку

 const { input, label, type, meta: { touched, warning } } = this.props
 return (
  <View style={{ flexDirection: 'row', paddingLeft: 5 }}>
    <Icon type='FontAwesome5' name='info-circle' style={{ fontSize: 14, color: '#ff0000', 
     paddingTop: 2 }} />
    <Text style={{ color: '#ff0000', fontSize: 12, textAlign: 'left', paddingTop: 2, 
    paddingBottom: 2, paddingLeft: 5 }}>{error}</Text>
    {touched && ((error && <Text style={{ color: 'red' }}>{error} dsds</Text>))}       

  </View>

Так вот моя проблема

  1. Сообщение об ошибке будет отображаться сразу после рендеринга компонента. Правильное поведение будет, если поле сфокусировано или пользователь начинает вводить его. Но оно не работает таким образом.
  2. Почему я могу добавить это в объект json, чтобы вся проверка происходила из объекта json
...