React TypeScript中文件上传事件的类型是什么?如何替换any类型?
如何为文件上传的change事件添加正确的TypeScript类型标注?
直接把any换成React.ChangeEvent<HTMLInputElement>即可,这是React中文件上传input对应的标准事件类型:
const handleFileChange = (e: React.ChangeEvent<HTMLInputElement>) => { setCollect({ ...collect, [e.target.name]: e.target.files[0], }); };
这个类型会自动帮你完成正确的属性推断:
e.target.name会被识别为字符串类型e.target.files是FileList类型,files[0]对应单个File对象
另外建议你把collect对象中对应字段的类型设置为File | undefined,这样能保证类型完全匹配,避免后续出现类型不兼容的问题。
内容的提问来源于stack exchange,提问作者FTDs
相关产品推荐
相关产品推荐

