2016-09-22 25 views
2

我正在編寫一個小應用來完成一些XML文件聚合。用戶刪除一些具有相同結構的XML文件,編輯一些常見標籤,然後我將它們返回到xml中,並在元素列表中提供所有需要的數據。angular2中文件的內容

我正在使用ng2文件上傳來做文件丟棄,但我找不出一種方法來獲取文件的內容。我不想將文件上傳到後端,只需讀取內容並對XML進行DOM操作即可。

是否可以將文件發送到Angular2.0路由並將內容發送回當前組件?

+1

我不認爲你將能夠做到你想要的那個插件,除非它公開了一些與下拉文件交互的接口。您可能需要編寫自己的組件來處理此問題。請參閱[使用文件API在JavaScript中讀取文件](http://www.html5rocks.com/en/tutorials/file/dndfiles/)。 – zero298

回答

2

感謝@ zero298的評論我做了一些更深入的File API,並提出了一個解決方案!

打字稿使用NG2文件上傳:

uploader: FileUploader = new FileUploader({}); //Empty options to avoid having a target URL 
reader: FileReader = new FileReader(); 

ngOnInit() { 
    this.reader.onload = (ev: any) => { 
     console.log(ev.target.result); 
    }; 
    this.uploader.onAfterAddingFile = (fileItem: any) => { 
     this.reader.readAsText(fileItem._file); 
    }; 
} 

只是採取了一些挖掘到NG2文件上傳代碼,以瞭解如何獲取File對象出來。