当我将.epub文件上传到我的浏览器时,我希望能够打开它,抓住封面图像并将其与.epub本身分开保存。
为了做到这一点,我使用react dropzone和futurepress 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未定义"
答案 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;
...