Spotify API 1.0 - 没有为播放器对象公开addEventListener方法

时间:2013-10-15 04:50:56

标签: spotify

Spotify API文档建议播放器类公开addEventListener方法:

models.player.addEventListener('change', function() { … });

我在尝试引用此方法时未定义:

var sp = getSpotifyApi(1);
var models = sp.require("$api/models");
console.log(models.player);
console.log(models.player.addEventListener);

第二条日志消息返回'undefined'

我在这里做错了什么想法?

谢谢, 好色

2 个答案:

答案 0 :(得分:1)

我有点像Javascript noob,但我已成功使用推荐的require格式连接到addEventListener。我不认为你应该再调用getSpotifyApi了。

require(['$api/models'], function(models) {
 ...
});

https://developer.spotify.com/technologies/apps/upgrade-guide/1.0.0

答案 1 :(得分:0)

您编写的代码使用API​​ 0.x,这就是未定义models.player.addEventListener的原因。您需要使用更新版本的API,1.x。

如果您想检测您需要执行的Player的更改:

require(['$api/models'], function(models) {
  models.player.addEventListener('change', function(p) {
    // p.data.track contains the current track
  });
});

您在"Current track" example in the Apps Tutorial中有一个例子。