逻辑:excel,pdf,word等附件上传功能,使用原生input type=file来选择附件,https调用后端接口的方案。
上传方案:由于不是form表单提交,是input type=file选择后调用http上传接口,因此,入参需要构建FormData对象,http请求时浏览器会自动设置Content-Type为multipart/form-data;。注意http设置成post请求,参数名为data(get请求才是params)。
const onChangeHandle = (e)=>{
const files = e.target.files;
let params = new FormData();
params.append('file', files[0]);
params.append('name', name || '');
uploadFileHttp(params).then((res) => {});
}
<input
type="file"
onChange={(e) => onChangeHandle(e)}
/>