2017-02-23 124 views
0

click事件我有以下圖標,有一個click事件觸發下載時,按下角2

<md-list-item *ngFor="let history of exportHistory"> 
     <md-icon (click)="onDownloadClick(history)" md-list-avatar>file_download</md-icon> 
     <a md-line>{{history.exportDate_epoch | epoch | date:'mediumDate'}}</a> 
     <p md-line> Exported by: {{history.by}}</p> 
     <p md-line> {{history.numberOfEntries}} Entries</p> 
    </md-list-item> 

我的歷史對象有一個屬性「URL」包含下載鏈接。

所以當我做下面的時候我會得到下載鏈接。

onDownloadClick(history: ExportHistoryModel) { 
    console.log(history.url); 
} 

如何觸發文件下載就像按下鏈接一樣?

回答

0

您可以嘗試幾種方法,如Blog中所述。

最好的方法是以編程方式創建帶有「下載」HTML5屬性的<a>標記。

const url = 'https://upload.wikimedia.org/wikipedia/commons/thumb/6/61/HTML5_logo_and_wordmark.svg/130px-HTML5_logo_and_wordmark.svg.png'; 
$('<a />') 
    .attr('href',url) 
    .attr('download', 'YourFileName.png') 
    [0].click(); 
0

我不知道有關的md-icon屬性,但你可以簡單地把它包裝在一個錨標記:

<md-list-item *ngFor="let history of exportHistory"> 
    <a href="{{history.url}}"><md-icon (click)="onDownloadClick(history)" md-list-avatar>file_download</md-icon></a> 
    <a md-line>{{history.exportDate_epoch | epoch | date:'mediumDate'}}</a> 
    <p md-line> Exported by: {{history.by}}</p> 
    <p md-line> {{history.numberOfEntries}} Entries</p> 
</md-list-item>