当前位置:   article > 正文

upload组件多个文件上传、自定义文件列表显示及手动上传_upload.list_ignore

upload.list_ignore

1.多个上传和上传单个

1)由 multiple属性 来控制

2)保存state时,注意存的List内容即可

  1. //参数
  2. uploadProps={
  3. name:'file', //接口入参名
  4. accept:'.gz', //接受上传的文件类型
  5. action:document.location.prot+'//'+location.host+'/apis', //接口url
  6. headers:{
  7. authorization:localStage.getItem('authorization')+'', //请求头(token)
  8. },
  9. multiple:true, // true 多选,false 单选
  10. onchange(info:any){ //上传文件改变时的状态 (上传中、完成、失败都会调用这个函数)
  11. //多选
  12. let fileList=[...info.fileList];
  13. //单选
  14. //let fileList=[info.fileList[info.fileList.length-1]];
  15. setFileList(fileList);
  16. },
  17. beforeUpload(fiel:any){
  18. //上传文件之前的钩子,参数为上传的文件,若返回 false 则停止上传。支持boolean | Promise<File> | Upload.LIST_IGNORE
  19. //上传之前对文件做限制,比如文件名错误的不上传,在此处做校验
  20. },
  21. showUploadList:{showRemoveIcon:true},
  22. progress:{ //进度条的显示
  23. strokeColor:{},
  24. format:(precent:any)=>{},
  25. }
  26. }

2. 自定义文件列表展示位置

1)从beforeUpload直接返回false

  1. beforeUpload(fiel:any,fileList:any){
  2. setFileList([fileList]);
  3. return flse;
  4. },

2)fileList,可以用表格展示,可以用另一个upload组件展示,也可以自定义其他方式。即 位置、方式自定义。

3. 手动上传(非点击就上传了,而是手动控制传不传)

1)区别就是不能再使用用组件自带的方式掉接口,需要点击时调接口

2)特别注意上传是需要是form-data的格式

  1. //手动上传
  2. const handleUpload=()=>{
  3. const formData=new FormData();
  4. fileList.forEach((file)=>{
  5. formData.append('file',file); //'file'接口接受的参数
  6. });
  7. fetch(document.location.prot+'//'+location.host+'/apis',{
  8. method:'POST',
  9. headers:{
  10. authorization:localStage.getItem('authorization')+'',
  11. },
  12. body:formData,
  13. }
  14. ).then(
  15. (res)=>{ //处理返回值
  16. }
  17. );
  18. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/339119
推荐阅读
相关标签
  

闽ICP备14008679号