2017-08-31 85 views
0

我正在爲一個Symfony項目製作一個播放列表的音頻播放器,除了我無法獲取正在播放的曲目的標題外,一切正常。從ArrayCollection(Twig)獲取一個結果

從我的查詢,我有軌道(從一個特定的專輯曲目)的數組:

array:6 [ 
▼ 

    0 => Track { 
#752 ▼ 

    -id: 1 
    -title: "Dragon" 
    -track: "Bzoark.mp3" 
    -trackFile: null 
    -createdAt: DateTime { 
#758 ▼ 

     +"date": "2017-08-10 09:39:00.000000" 
     +"timezone_type": 3 
     +"timezone": "UTC" 
    } 
    -updatedAt: DateTime { 
#755 ▶ 
} 
    -album: Album { 
#555 ▶ 
} 
    } 
    1 => Track { 
#733 ▶ 
} 
    2 => Track { 
#768 ▶ 
} 
    3 => Track { 
#771 ▶ 
} 
    4 => Track { 
#774 ▶ 
} 
    5 => Track { 
#777 ▶ 
} 
] 

問題是,我這樣做對我的樹枝文件時,我有我所有的曲目列表名字(這是正常的)。

<div class="song-info"> 
    <span class="artist">{{ album.artist }}</span> 
    <span class="song">{% for tracksList in tracks %}{{ tracksList }}{% endfor %}</span> 
</div> 

有沒有辦法只得到曲目播放的名字?

這裏一個screenshot of that problem(前端):

我使用JS/jQuery的(audioJs)音頻播放器播放的曲目。

我不太確定這是可能的(從樹枝),但有可能是另一種解決方案來做到這一點? (來自js?)

感謝您的幫助!

+3

設置的另一個屬性的名稱如布爾('isPlaying')爲true,並僅顯示該值。由於您正在使用for循環 - 它確實將顯示您正在迭代的陣列中的所有歌曲標題 – Jaya

+0

正如@Jaya所說的,您的軌道對象應該有一個屬性,您可以控制它。 Regards – Albeis

+0

謝謝,但我不確定要理解,我需要在我的實體「軌道」上添加屬性?如果是這樣,我怎麼能在我的模板樹枝中管理這個新屬性,如果它是一個真正的布爾值,我需要在另一首歌曲播放時將其更改爲false。 – Key

回答

0

如果你使用一個js控制播放,很容易用js獲得軌道的名稱,或者做一些循環和控制點擊與JS的跨度擺脫階級屬性