2017-09-21 47 views
0

我目前正在使用文件API使用png jpg和gif很好的上传文件功能,但我也尝试上传和存储pdf,但是当我检索上传的pdf时,它无法阅读(我正在使用pdfjs来显示,'真正'pdfs显示正常)。pdf与FileReader一起下载

我使用FileReader readAsDataUrl在教程中看到,但我对这个工具的知识是相当有限的。

这里是我的代码,:

uploadMenu() { 
if (this.state.title && this.state.file) { 
    this.setState({loading: true}) 
    const self = this; 
    const reader = new FileReader(); 
    reader.onloadend = function(e) { 
    const data = reader.result; 
    const jsonToSend = { 
     "title": self.state.title, 
     "position": self.state.select, 
     "imageName": self.state.file.name, 
     "image": data 
    } 
    fetch('/new/content/' + self.state.topID, { 
     headers: { 
     'Accept': 'application/json', 
     'Content-Type': 'application/json' 
     }, 
     dataType: 'json', 
     method: "POST", 
     body: JSON.stringify(jsonToSend) 
    }).then((res) => res.json()).then((res) => { 
     self.setState({loading: false}) 
     if (res.status === "ok") { 
     self.props.close(); 
     self.props.refresh(); 
     } else { 
     self.setState({errorMessage: res.status}); 
     self.setState({errors: true}); 
     } 
    }); 
    }; 
    reader.readAsDataURL(this.state.file); 
    this.setState({errors: false}); 
} else { 
    this.setState({errorMessage: "All fields are required"}); 
    this.setState({errors: true}); 
} 

上的FileReader或什么,我缺少的将是巨大的任何见解!

回答

0

至少,缺少这两行分号(:):

this.setState({loading: true}) 
self.setState({loading: false})