Я уже инициализировал Deezer sdk
initDeezer() {
DZ.init({
appId: '373224',
channelUrl: 'http://localhost:4200/profile',
player: {
container: 'player',
onload: () => {
}
}
});
}
Вызов этой функции на хуке ngOnInit () внутри моего компонента, затем я получаю ответ от массива api deezer, сопоставления, чтобы получить массив Идентификаторы треков, затем я загружаю треки в плеер следующим образом:
DZ.player.playTracks(tracks, false);
Итак, когда я нажму 'play' на плеере deezer, все будет хорошо, все работает нормально, но я отображаю список дорожки, я создал функцию, которая воспроизводит конкретную дорожку, в этом случае моя логика c следующая: 1) загрузить новую дорожку в список дорожек 2) воспроизвести ее
playMusic(trackId) {
DZ.player.playTracks([+trackId]);
DZ.player.play();
}
Проблема: после получения ответа от бэкэнда, нажатие на трек и вызов функции playMusi c ничего не произошло, но если я сначала нажму на плеер deezer, чтобы воспроизвести музыку c, и после этого снова нажму на трек playMusi c() работает отлично. Что я делаю не так? Как заставить playMusi c тоже работать впервые? Также я хотел бы услышать некоторые рекомендации о том, как реализовать SDK deezer для angular приложения, потому что я не уверен, что сейчас делаю это правильно.