Реагировать, изменить const на компонент с реквизитом

Реагировать,

Здравствуйте, мне нужно изменить const для компонента с реквизитом.

Как мне это сделать?

const renderFieldOne = ({ input, label, type, meta: { touched, error, warning } }) => (
  <div>
    <div className ="group">
      <input className="text"
      {...input}
      type={type}/>
      <label>{label}</label>
      <span className="highlight"></span>
      <span className="bar"></span>
      {touched && ((error && <span>{error}</span>) || (warning && <span>{warning}</span>))}
    </div>
  </div>
)

1 ответ

Решение

Вам нужно будет передать каждую опору индивидуально для каждой функции, которую вам нужно было вызвать

<renderFieldOne
  input={renderFieldOneInputValue} 
  label={renderFieldOneLabelValue}
  type={renderFieldOneTypeValue}
  meta={touched}
/>

а затем в компоненте renderFieldOne вы можете сделать

const renderFieldOne = ({input, label, type }) => {...}

при деструктурировании он назначит соответствующие имена / значения свойств переданным переменным, используйте это как ссылку https://amido.com/blog/using-es6-destructuring-in-your-react-components/. Имена должны совпадать со свойствами

или просто сделать

const renderFieldOne = (props) => {...}
and in each place call props.input or whatever prop you are trying to access.
Другие вопросы по тегам