2013-07-25 31 views
0

試圖讓我的社區列表(和配置文件以及)使用JavaScript ibmsbt api傳遞帶有加載函數的對象到getMyCommunities函數沒有結果。分配給加載屬性的函數根本不會被執行。 下面是代碼:在服務對象中聲明的加載函數不執行

var communityService = new CommunityService(); 
communityService.getMyCommunities({ 
    load: function(communities) { 
     var ul = document.getElementById("communities") 
     for (var i=0; i<communities.length; i++) { 
      var community = communities[i];  
      var li = document.createElement("li"); 
      ul.appendChild(li); 
      li.setAttribute("id", "community" + i); 
      dom.setText("community" + i, community.getTitle()); 
     } 
    }, 
    error: function(error) { 
     console.error("Error: "+error.message); 
    } 
}); 

但是,當我使用的承諾一切就像一個魅力。那就是:

var cp = communityService.getMyCommunities(); 
cp.then(
    function(communities){ 
     var ul = document.getElementById("communities") 
     for (var i=0; i<communities.length; i++) { 
      var community = communities[i];  
      var li = document.createElement("li"); 
      ul.appendChild(li); 
      li.setAttribute("id", "community" + i); 
      dom.setText("community" + i, community.getTitle()); 
      } 
    }, 
    function(error){ 
     console.error("Error: " + error.message); 
    }); 

負載功能的部分API文檔說:通話,讓我的社區完成時 此函數被調用。該函數期望接收一個參數,社區對象 - 我的社區的一個數組。 api doc

我在想什麼?

回答

1

我們的API文檔已過時。我們只支持異步調用的Promise語法。我將更新API文檔,但同時您可以使用SDK下載中的文檔。

關於馬克

+0

哦,tx快速回復。很奇怪SDK _(sbtsdk-1.0.0.20130603-0843)_中的API文檔被更新(我的意思是沒有支持加載函數),但示例仍在使用它們。 _(helloworld.webapp)_。 – rilaby