2013-12-09 42 views
1

我一直在研究Spotify應用程序一段時間。我開始使用舊的API(0.x),但現在我想訪問用戶的播放列表,我需要使用僅在API version 1.0如何在Spotify應用程序中創建Discincts JS方法

中可用的庫模塊。spotify團隊甚至會給出migration guide這樣做! (如果你讀過我:謝謝你們所有這些;))。

我已經創建了幾個對象(這是一個小的應用程序,所以我並不需要的遠不止),具有功能我需要每一個,就像這樣:

var sp = getSpotifyApi(); 
var models = require('sp://import/scripts/api/models'); 
var player = models.player; 
var views = require('sp://import/scripts/api/views'); 

// in file 'mySpotify.js' 
var mySpotify = 
{ 
    playerNextTrack: function() 
    { 
    player.next(); 
    }, 
} 

每當我需要跳過當前曲目,我可以叫mySpotify.playerNextTrack();

但是現在,隨着新的API,我需要做這樣的事情(從Spotify doc):

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

我闕stion很簡單:我如何將這種代碼包含到我的對象中?我怎樣才能給這個最後的「功能」命名?

正如我剛從新JS,我可能做錯事或某物理解錯誤的方式可以隨意制定,如果你能;)

回答

1

我會什麼,我認爲是開始簡單的答案,只需將require([], function {[all your code]});放在您的整個myspotify.js文件中。這基本上就是我對我的,但我沒有建立任何我自己的對象。不要以爲這很重要。

更新 這裏有一些信息顯示可以使用對象。這是你在找什麼?

require(['$api/models'], function(models) { 
var mySpotify = 
{ 
    playerNextTrack: function() 
    { 
    models.player.skipToNextTrack(); 
    }, 
} 

var playtest = document.querySelector('#playtest'); 
playtest.addEventListener('click', function() { mySpotify.playerNextTrack(); }); 

}); 
+0

感謝您的回答(對不起,我遲到的反應,我離開......) 我不能檢查,如果這個工程現在,但我將在本週嘗試。 沒有冒犯,但它在我看來這是一種「解決方法」,不是嗎? – gfd

+0

對不起,但是,你能告訴我一個你的實現的簡化版嗎? 我試圖做這樣的事情 ' 要求([ '$ API /模型'],函數(模型){VAR = ZmSpotify { VAR 玩家= models.player; player.next();} );' ...但我有core.js:/ – gfd

+0

需要()'缺少回調函數參數,我也很抱歉這個問題格式:SO不允許我使用'code'格式在這裏:( – gfd

相關問題