Spotifyのアプリを作っています。このアプリケーションには、ユーザーが現在聴いているトラックからアルバムのプレイリストを追加できる単純な「サブスクライブ」機能があります。すべて正常に動作します。私はこのバグを持っています。複数の曲を聴いた後、購読ボタンを押すと、聴いたすべての曲のプレイリストが追加されます。
例: アルバムの 3 曲を聴いた後、サブスクライブを押します。1 曲ごとに 3 つのプレイリストが追加されます。次に、別のアルバムの曲を聴いている場合、[購読] を押すと、新しい曲と前の 3 曲のプレイリストが追加されます。これは、アプリケーションをリロードするまで発生し続けます。
アプリをロードした後に聞いたすべての曲を覚えているようです。
これは私のコードです:
関数購読(){
//Cache important information
var playerTrackInfo = player.track;
var track = playerTrackInfo.data;
var albumUri = track.album.uri;
var albumTitle = track.album.name;
var artistFromAlbum = track.album.artist.name;
//Click event on button
$(".subscribe button").on("click", function(playlist){
console.log("I work!"); //Checks if button click works
//Creates new playlist "Albumtitle - Artistname"
var playlist = new models.Playlist(albumTitle+" - "+artistFromAlbum);
//Fills in playlist with album from current playing track
models.Album.fromURI(albumUri, function(album){
$(album.tracks).each(function(i) {
playlist.add(album.tracks[i]);
});
});
playlist.subscribed = true;
playlist.observe(models.EVENT.CHANGE, function() {
console.log("Playlist was subscribed!");
});
});
}
この問題を防ぐ方法が必要です。さまざまな方法を試し、ウェブを際限なく検索しましたが、今のところうまくいきません。正しい方向への助けや指摘は素晴らしいでしょう!