2017-12-11 1 views
-2

gibt es eine Möglichkeit, den Browser durch JavaScript/TypeScript zum Öffnen des Download-Fensters zu zwingen. Ich möchte das Download-Fenster öffnen, da die meisten Benutzer direkt in den Download-Ordner herunterladen und ich möchte dem Benutzer die Möglichkeit geben, die Datei umzubenennen und den Download-Ordner zu wählen.Download-Fenster erzwingen, um Datei-Download zu öffnen

ermogliche den Download wie folgt aus:

const json = JSON.stringify(data); 
    const blob = new Blob([json], {type: 'application/json'}); 
    const url = URL.createObjectURL(blob); 

    const a = document.getElementById('export'); 
    a.download = 'export.json'; 
    a.href = url; 
+0

bitte versuchen Sie ..... –

Antwort

0

Vollblogpost für die gleiche: Download File in Angular Js2 Application

diese zwei Linie in Sie Code fehlt:

var url= window.URL.createObjectURL(b);//add this line 
window.open(url);//add this line for download 

Ich versuche vorschlagen wie folgt aus:

constructor(private http:Http) 
    {} 

    DownloadFile():void 
    { 
    this.getFile("http://localhost:1800/api/demo/GetTestFile") 
    .subscribe(fileData => 
     { 
     let b:any = new Blob([fileData], { type: 'application/zip' }); 
     var url= window.URL.createObjectURL(b);//add this line 
     window.open(url);//add this line for download 
     } 
    ); 
    } 

    public getFile(path: string):Observable<any>{ 
    let options = new RequestOptions({responseType: ResponseContentType.Blob}); 
    return this.http.get(path, options) 
     .map((response: Response) => <Blob>response.blob()) ; 
    } 

ähnliche Antwort von mir: Angular JS empty pdf in new window

+1

warum gibt es -1 ??? Es funktioniert Code und es öffnet Fenster zum Download ..... –

+0

Wenn ich diese Methode versuche, öffnet mein Browser eine neue Registerkarte, die automatisch geschlossen wird und nichts passiert. :/ – Leonzen

+1

@Leonzzen - du willst Tab bleiben offen ??? –

Verwandte Themen