2017-09-21 89 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})