[FileReader仅在删除多个文件时读取一个文件

问题描述 投票:0回答:1

我正在与每个文件进行编码和拼写。我得到的是正在读取一个文件。

下面的代码记录每次迭代(console.log(i)),但是仅读取和记录最后一个文件,无论是以dataURL还是Text读取都可以

fileInput.on('change',function(){

    var files= fileInput.prop('files');
    console.log(files);

    for(var i = 0; i < files.length; i++){

       var reader = new FileReader();
      console.log(i);
      reader.onload = function(){

          console.log(reader.result);
      }
      reader.readAsDataURL(files[i]);

    }

  });

我需要将多个文件中的每个文件都登录到控制台。感谢您的协助

javascript file reader
1个回答
0
投票

使用let而不是var将变量适当地作用于循环:

for (let i = 0; i < files.length; i++) { // Use let here

  var reader = new FileReader();
  console.log(i);
  reader.onload = function() {

    console.log(reader.result);
  }
  reader.readAsDataURL(files[i]);

}
© www.soinside.com 2019 - 2024. All rights reserved.