首页 > 其他分享 >前端处理 input 元素的 files 属性时报错【m.map is not a function】

前端处理 input 元素的 files 属性时报错【m.map is not a function】

时间:2022-08-14 22:28:46浏览次数:77  
标签:files map const function FileList input event

问题描述

在使用 HTML 的文件上传元素<input type="file">时,处理其返回的files数据时遇到了这个报错m.map is not a function
我的代码如下:

const uploadCSVFiles = event.target.files;
uploadCSVFiles.map((f) => {
        if (f) {
          setUploadText(`正在上传${f.name}`);
          // 省略
        }
}

输出 event.target.files,得到:

从图片上可以看出这是一个FileList类型的数据。

解决方式

经过查阅资料后才发现,这个FileList类型虽然看起来是个数组,但其实并不是数组,所以不能使用map方法。

map方法的全称是Array.prototype.map(),属于数组类型的方法。

因此我改为使用for (const ... of ... )的方式去遍历FileList类型,如下:

for (const f of event.target.files) {
      setUploadVis(true);
      if (f) {
        setUploadText(`正在上传 ${f.name} ...`);
        // 省略
      }
}

标签:files,map,const,function,FileList,input,event
From: https://www.cnblogs.com/chrystal/p/16586529.html

相关文章

  • map和解构
    Map:<script>//创建map的两种方式varmap1=newMap;//无参,空的mapconsole.log(map1);//Map(0) {size:0}vararr=[[1,2],......
  • HashMap的一些底层知识点
    HashMap的底层数据结构?数字+链表+红黑树HashMap的存取原理?①.判断键值对数组table[i]是否为空或为null,否则执行resize()进行扩容;②.根据键值key计算hash值得到插入......
  • MapReduce入门实战
    MapReduce思想MapReduce是Google提出的一个软件架构,用于大规模数据集的并行运算。概率“Map(映射)”和“Reduce(归约)”以及它们的思想都是从函数式编程语言借鉴的,还有......
  • 阅读笔记: Map-Based Precision Vehicle Localization in Urban Environments
    摘要结合了GPS、IMU、轮速计和LiDAR数据,生成高精度的环境地图。使用了与近期的SLAM方法类似的offlinerelaxation技术,把地图在相交区域和自我重叠区域进行对齐。通过把最......
  • 图片系列(6)不同版本上 Bitmap 内存分配与回收原理对比
    请点赞关注,你的支持对我意义重大。......
  • Spring MVC组件之HandlerMapping
    SpringMVC组件之HandlerMappingHandlerMapping概述HandlerMapping组件的作用解析一个个Request请求,并找到相应处理这个Request的Handler。Handler一般可以理解为Control......
  • DFS记忆化搜索--Divider & Conquer + Hashmap(数字三角形)
    记忆化搜索是DP的一种实现方式,等价于动态规划一个经典的例子:数字三角形给定一个三角形triangle,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。相......
  • HashMap-有效的数独
    问题描述:判断一个9x9的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可:数字1-9在每一行只能出现一次。数字1-9在每一列只能出现一次。数字......