자바 스크립트에서와 거의 같은 방식입니다.
위의 내용이 FileUploadComponent
이라는 구성 요소를 말하는 템플릿이라면 다음과 같이 할 수 있습니다. 이 번호는 HTML5
입니다. 그래서 IE10에서 브라우저를 지원합니다.
@Component({
selector: 'file-upload',
template: `
...
<input type="file" class="upload" (change)="_onChange($event.target.files)">
...`
})
export class FileUploadComponent {
private _onChange(files: FileList) : void {
if(files && files.length > 0) {
let file : File = files.item(0);
//Now you can get
console.log(file.name);
console.log(file.size);
console.log(file.type);
}
}
}
이 기능을 확장하여 FileReader
을 사용하여 파일을로드 할 수 있습니다.
예를 들어 당신이 csv
파일을 읽고 싶은 경우 : file
와의
시작 :
let reader: FileReader = new FileReader();
reader.onload = (e) => {
let csv: string = reader.result;
console.log(csv);
//From here you can either use a csv parse library, or your own
//implementation if you know what the structure of the csv is
}
reader.readAsText(file);
덕분에, 사람을. 그것은 작동합니다. :) 예를 들어 csv와 같은 데이터를 어떻게 파싱 할 수 있습니까? 이 작업을 수행하기 위해 Angular 2에서 사용해야하는 유틸리티가 있습니까? – xiotee
@xiotee 약간의 대답을 업데이트했습니다. Angular2에는 CSV 구문 분석 유틸리티가 없습니다. 그것은 angular2가있는 것이 아닙니다. – PierreDuc
저를 올바른 방향으로 향하게 해주셔서 감사드립니다. :) – xiotee