Spotify 应用程序 - 列表不显示播放列表的曲目,只显示标题

Spotify app - List don't show tracks of playlist, just the thead

本文关键字:显示 曲目 标题 播放列表 列表 Spotify 应用程序      更新时间:2023-09-26

我想列出一个包含播放列表曲目的普通列表。 我无法列出该列表中的曲目,我只是得到了字段(曲目、艺术家、时间、星星、nr 等(的头,这是灰色的。这是唯一出现的一个,没有出现任何痕迹,看起来很奇怪。

这是我正在使用的功能:

function setPlaylistWithTopic(playlisturi, row) {
    // Play multiple tracks
    console.log(playlisturi);
    models.Playlist.fromURI(playlisturi).load(['name','owner', 'tracks', 'description']).done(function(playlist) {
        console.log("came in");
        console.log(playlist);
        var multiple_tracks_player = document.getElementById(row);
        multiple_tracks_player.className = multiple_tracks_player.className + " sp-list-style-rounded albumlist";
        console.log(playlist);
        var list = List.forPlaylist(playlist);
        var image = Image.forPlaylist(playlist, {width: 65, height: 65});
        var playlistname = playlist.name;
        var playlistowner = playlist.owner;
        if(playlistname.length > 75) {
            playlistname=playlistname.substr(0,75) + "..";
        }
        $("#"+row).append("<div class='col-md-12 col-sm-12 col-xs-12 row'><div class='pull-left' id='albumcover'></div><div class='albumhead' id='"+playlisturi+"'><h3><a href='"+playlisturi+"'>"+playlistname+"</a></h3><span class='label col-md-12 row'>"+playlistowner+"</span></div></div>").append(list.node);
        $("#"+row + " #albumcover").append(image.node);
        $("#"+row + " .albumhead").append("<button class='sp-button sp-add-to-collection-button sp-button-accentuated-positive sp-button-accentuated' style='min-width: 156.15625px;'><span class='sp-button-text'><div class='sp-button-icon sp-icon-add'></div>Subscribe</span><span class='sp-button-background'></span></button>");
        $("#"+row + " #"+playlisturi+" .sp-add-to-collection-button").die("click");
        $("#"+row + " #"+playlisturi+" .sp-add-to-collection-button").live('click',function(e){
                //Subscribe on playlist
                e.preventDefault();
        });
        list.init();
    });
}

我使用的是jQuery和Spotify的API版本1.30.0,我认为它应该是1.0.0,但是当它不起作用时,我在查找API文档时测试更改为1.30.0,并且视图的版本为1.3 * .0。

我做错了什么?

播放列表 uri 变量包含冒号,需要使用 '''' 进行转义:

var escapedPlaylistUri = playlisturi.replace(":","'':");
$("#" + row + " #" + escapedPlaylistUri + " .sp-add-to-collection-button").die("click");
$("#" + row + " #" + escapedPlaylistUri + " .sp-add-to-collectionbutton").live('click', function(e) { ...

"使用任何元字符(例如 !'"#$%&'()*+,./:;<=>?@[]^'{|}~ ( 作为名称的文字部分,它必须 使用两个反斜杠进行转义:''。 - http://api.jquery.com/category/selectors/