gpt4 book ai didi

reactjs - 类型 'File' 的参数不可分配给类型 'SetStateAction' 的参数

转载 作者:行者123 更新时间:2023-12-05 02:31:41 29 4
gpt4 key购买 nike

我正在使用 React 和 typescript 构建一个应用程序,如果我在 handleImageUpload 函数上初始化为任何我的“evt”,我有一个多部分的帖子。但是,如果我尝试将其初始化为 React.ChangeEvent,则会出现以下错误:

“‘文件’类型的参数不可分配给‘SetStateAction’类型的参数。”你能帮我解决这个问题吗?您还可以向我建议如何更改 handleSubmit 函数的任何初始化吗?谢谢<3

  const handleSubmit = async (evt: any) => {
// debugger;
evt.preventDefault();
setIsProcessingUpload(true);
const formData = new FormData();
formData.append('logoimg', logo);
formData.append('background_image', background);
formData.append('name', name);

console.log(formData);
try {
Api.post('api/companies', formData, {
headers: {
'Content-Type': 'multipart/form-data'
}
}).finally(() => {
setIsProcessingUpload(false)
closeModal();
});
} catch (err) {
console.log(err);
}
};
  const [logo, setImage] = useState('');

const handleImageUpload = (evt: React.ChangeEvent<HTMLInputElement>) => {
if (evt.target.files != null) {
setImage(evt.target.files[0]); //error
}
};

最佳答案

如何为您的 useState 声明 File 类型而不是 String ''

 const [logo, setImage] = useState<File | null>(null);

const handleImageUpload = (evt: React.ChangeEvent<HTMLInputElement>) => {
if (evt.target.files != null) {
setImage(evt.target.files[0]); //error
}
};

关于reactjs - 类型 'File' 的参数不可分配给类型 'SetStateAction<string>' 的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71471072/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com