У меня проблема со сбросом ввода после публикации данных, что делает невозможной повторную загрузку того же файла. Я довольно новичок в React, и я думаю, что мне здесь чего-то не хватает Вот мой код
let fileInput = React.createRef();
let defaultDataInput = {text: 'Fichier NC8', valid: null};
const [input, setInput] = React.useState(defaultDataInput);
const sendDonnesLogistiiques = () => {
if (input.valid === null || input.valid === false) {
input.valid = false;
setInput({...input});
return;
}
setLoading(true);
Api.post({
route: 'administrateur_code_douane_importer',
file: {
fichier: fileInput.current.files[0]
},
},
function (response) {
setLoading(false);
let defaultDataInput = {text: 'Fichier NC8', valid: null};
setInput(defaultDataInput);
if (response.status === 200) {
dispatch(
SnackbarOpen({
text: 'L\'import des données logistiques s\'est bien déroulé.',
variant: 'success',
})
);
} else {
setLoading(false);
dispatch(
SnackbarOpen({
text: response.message,
variant: 'error'
})
);
}
}
);
};
const inputOnChange = () => {
if (fileInput.current && fileInput.current.files[0]) {
setInput({text: fileInput.current.files[0].name, valid: true});
}
};
и вот мой ввод, который я пытаюсь очистить:
<input id={'fileImport'}
hidden={true}
type="file"
ref={fileInput}
onChange={inputOnChange}
accept=".xls"
/>