setImage 不使用 Spotify Apps API 在 JavaScript 中显示新图像

Posted

技术标签:

【中文标题】setImage 不使用 Spotify Apps API 在 JavaScript 中显示新图像【英文标题】:setImage does not show the new image in JavaScript with Spotify Apps API 【发布时间】:2014-04-18 13:36:03 【问题描述】:

我正在尝试使用setImage method 设置不同的图像。

问题是新图像仅在很短的时间内可见,然后逐渐消失在原始图像中。

除此之外,播放按钮消失了。

这是我的代码:

require(['$api/models', '$views/image#Image'], function(models, Image) 

    // Play a single track
    var track = models.Track.fromURI('spotify:track:7B1Dl3tXqySkB8OPEwVvSu');
    var image = Image.forTrack(track, player: true);

    // A line added by me to set the new image
    image.setImage("/img/spotify-logo.png");

    // Pass the player html code to the #single-track-player div
    document.getElementById('single-track-player')
        .appendChild(image.node);
);

这段代码大部分取自Spotify Apps Tutorial。

我添加的唯一一行是 setImage 方法。

我做错了什么?

【问题讨论】:

@danek 感谢编辑! 【参考方案1】:

使用Image.setImage 设置自定义图像时可能存在竞争条件。

一种解决方案是使用Image.fromSource 方法:

require(['$api/models', '$views/image#Image'], function(models, Image) 

    // Play a single track
    var track = models.Track.fromURI('spotify:track:7B1Dl3tXqySkB8OPEwVvSu');
    var image = Image.fromSource("/img/spotify-logo.png", 
        playerItem: track,
        player: true
    );

    // Pass the player HTML code to the #single-track-player div
    document.getElementById('single-track-player')
        .appendChild(image.node);

);

【讨论】:

以上是关于setImage 不使用 Spotify Apps API 在 JavaScript 中显示新图像的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Spotify Apps API 对象?

Spotify Apps API:检测离线模式

Apps API 中的 Spotify playlists.tracks 对象中缺少用户字段

无法在 Spotify Apps API 中获取艺术家的专辑

Spotify Apps API:获取其他用户的播放列表

通过 Google Apps 脚本进行 Spotify API 授权