正在上载时读取.epub文件

时间:2018-02-17 08:57:23

标签: javascript filereader epub

当我将.epub文件上传到我的浏览器时,我希望能够打开它,抓住封面图像并将其与.epub本身分开保存。

为了做到这一点,我使用react dropzonefuturepress epub reader。在自述文件中它说:

"在最新的浏览器版本中,onDrop提供的文件不具备属性路径或fullPath。如果要访问文件内容,则必须使用FileReader API"

这是我目前的代码:

onDrop(acceptedFile) {
  for (var i = 0, f; f = acceptedFile[i]; i++) {
    const reader = new FileReader();
    reader.onload = (function(reader) {
      return function() {
        const contents = reader.result;
        const Book = ePub(contents);
        console.log(Book);
      }
    })(reader);

    reader.readAsText(f);
  }
}

当我尝试上传.epub文件时,我得到了 - " referenceError:href未定义"

1 个答案:

答案 0 :(得分:0)

FileReader API onload事件有一个不同的概要:

reader.onload = function(event) {
    // showing the text of the file
    console.log(event.target.result)
};

所以我建议改变这样:

onDrop(acceptedFile) {
  for (var i = 0, f; f = acceptedFile[i]; i++) {
    const reader = new FileReader();
    reader.onload = (function(event) {
      return function() {
        const contents = event.target.result;
...