2017-03-31 47 views
0

在我的音樂應用程序中,我有一個「單擊」功能,它會發出http請求並從服務器播放.mp3文件。我的問題是,有時應用程序需要一段時間才能從服務器獲取音頻,這就是爲什麼我添加了離子微調器的原因。我希望微調只有在音頻加載後纔會出現,然後消失。ion-spinner在等待音樂加載時

Home.html中

<ion-card-content (click)="play(sound)"> 
     <div class="wrapper"> 
     <ion-spinner class="color-green" name="{{ sound.spinner }}"></ion-spinner> 
     <img src="{{ sound.imageUrl }}" />  
     </div>  

    </ion-card-content> 

Home.ts

/* Plays a sound, pausing other playing sounds if necessary */ 
    play(sound) { 



console.log(sound) 
if(this.media) {  
    this.media.pause();  
} 
this.media = new Audio(sound.file);  
this.media.load(); 
this.media.play(); 
} 

回答

1

在Home.ts添加以下代碼

<ion-card-content (click)="play(sound)"> 
     <div class="wrapper"> 
     <ion-spinner class="color-green" [name]="sound.spinner" [paused]="toggleSpinner"></ion-spinner> 
     <img src="{{ sound.imageUrl }}" />  
     </div>  

    </ion-card-content> 

在構造

toggleSpinner= false 

play(sound) { 
    toggleSpinner= true 
...... 
} 
+0

Aravind,謝謝你的迴應。裝載現在顯示,但不會消失。加載完成後它不會回到「假」狀態。謝謝 –

+0

能否詳細說明一下? – Aravind

+0

當我點擊播放按鈕時,離子加載顯示出來(多數民衆贊成)。音頻播放後離子加載仍然存在,當它應該消失。 所以即使音頻已經加載並播放離子加載的旋轉器仍然會 希望有道理,謝謝 –