Я новичок в редуксе, и я имел дело с типом ввода файла. Наконец-то я нашел полезный способ обработки типа ввода, но мой файл не сохраняет свое значение в хранилище с избыточностью, как остальные типы ввода. Никаких ошибок не возникает, поэтому я в растерянности, помогите пожалуйста. Вот мой код
const renderDuration = ({ input, meta: { touched,error }}) => (
<div>
<select {...input}>
<option value="">Select Duration
</option>
<option value="Rush Hour 1">Rush Hour (a.m)
</option>
<option value="7 days">Week
</option>
<option value="30 days">Month
</option>
</select>
{touched && error && <span>{error}</span>}
</div>
);
//for handling the file input
const adaptFileEventToValue = delegate => e => delegate(e.target.files[0]);
const FileInput = ({
input: {value, omitValue, onChange, onBlur, ...inputProps},
meta: {touched, error},
...props
}) => {
return (
<div>
<input
onChange={adaptFileEventToValue(onChange)}
onBlur={adaptFileEventToValue(onBlur)}
type="file"
{...props.input}
{...props}
/>
{touched && error && <span>{error}</span>}
</div>
);
};
//used them like so:
<div>
<label>Select Duration</label>
<Field
name="duration"
component ={renderDuration}
/>
</div>
<label>Choose Media</label>
<Field
name="photo"
type="file"
component={FileInput}
/>
`