2017-11-14 3 views
0

Am mit einem Formdata-Objekt, eine Datei zu laden, möchte ich die Funktionalität Datei aus Formdata zu löschen, aber ich erhalte eine Fehler Eigenschaft löschen existiert nicht auf Formdata-ObjektformData.delete() nicht eine bekannte Eigenschaft

formData.delete(fileName) 

-Code

upload(){ 
    let formData = new FormData(); 
    let inputEl: HTMLInputElement = this.inputEl.nativeElement; 
    let files: FileList = inputEl.files; 
    formData.append('uploadFile', files, files.name); 
} 

delete(fileName){ 
    formData.delete(fileName); 
} 
+0

Teile Code – Gianlucca

+0

‚laden() { Formdata = new Formdata lassen(); Lassen Sie inputEl: HTMLInputElement = this.inputEl.nativeElement; Lassen Sie Dateien: FileList = inputEl.files; formData.append ('uploadFile', files, files.name); } löschen (filename) { formData.delete (filename) }‘ – Ash

Antwort

0

Variablen können nicht zwischen den Methoden geteilt werden, so dass Sie eine Eigenschaft verwenden, benötigen, oder rufen Sie die Methode und ein Ergebnis zu bekommen.

Im folgenden Beispiel wird formData in einer privaten Eigenschaft gespeichert und in jeder Methode mit this.formData referenziert.

private formData: FormData; 

upload() { 
    this.formData = new FormData(); 
    let inputEl: HTMLInputElement = this.inputEl.nativeElement; 
    let files: FileList = inputEl.files; 
    this.formData.append('uploadFile', files, files.name); 
} 

delete(fileName){ 
    this.formData.delete(fileName); 
} 
+0

Still I Eigenschaft get 'löschen' existiert nicht auf Typ Formdata – Ash

+0

Wo Sie es nennend? Klingt so, als hättest du das klassische Scope-Problem, das wahrscheinlich mit einer Pfeilfunktion gelöst wird. – Fenton

Verwandte Themen