2012-11-01 67 views
0

它觸發兩次都具有不同的價值的時候......Spotify的API - 玩家EVENT.CHANGE觸發兩次

這是我的代碼:

window.onload = function init() { 
    console.log('subscribing') 
    player.observe(models.EVENT.CHANGE, function (e) { 
    console.log('e.data.curtrack %d', e.data.curtrack) 
    console.log('e.data.playstate %d', e.data.playstate) 
    console.log('---') 
    console.log(player.playing) 
    }) 
} 

回答

0

剛剛確認這是一個的Spotify客戶端錯誤直接從開發團隊irc上獲得。 這是一個修復 +其他糖果如常見事件接口

https://gist.github.com/bc1a7e1c06c1077f238d發射來自組件回購https://github.com/component/emitter

使用我的補丁,我們可以做這樣的事情:

var sp = getSpotifyApi(1) 
var models = sp.require('sp://import/scripts/api/models') 
var player = sp.require('player-fix').player 

window.onload = function init() { 
    console.log('subscribing') 

    player.on('play', function() { 
    console.log('play') 
    }).on('pause', function() { 
    console.log('pause') 
    }).on('trackChange', function (track) { 
    console.log('trackChange', track.data.name) 
    }).on('shuffleChange', function (shuffle) { 
    console.log('shuffleChange', shuffle) 
    }).on('repeatChange', function (repeat) { 
    console.log('repeatChange', repeat) 
    }).on('volumeChange', function (volume) { 
    console.log('volumeChange', volume) 
    }).on('contextChange', function() { 
    console.log('contextChange') 
    }) 
}