2012-05-03 29 views
3

我有兩個API,我想同時使用,API1和API2。檢索多個API的使用ID

API2將新聞提要傳遞給API1,而API1處理列表表單中的所有內容。這意味着,如果點擊API1中的任何列表,它將使用已定義的ID從API2檢索新聞提要。

誰能幫我一下嗎?我被卡住了。我的代碼截圖在這裏:http://i1159.photobucket.com/albums/p637/Apulo_Cosmas/2API.jpg

非常感謝。

+0

看起來您需要連接* click *事件並傳遞* contentId *,但很難分辨。你能提供更多信息嗎?你使用一些Javascript,你可以發佈? – McGarnagle

+0

嗨dbaseman,我的代碼示例在這裏。我打印屏幕的正確理解:http://i1159.photobucket.com/albums/p637/Apulo_Cosmas/2API.jpg –

+0

謝謝,但這只是一些JSON,我還是不明白你的代碼是如何運作的。你正在使用某種框架(MVC?)。你如何將新聞源渲染成標記? – McGarnagle

回答

0

如果您手動收聽您的列表(從API 1中獲取)itemtap事件可能會更容易。

在你的控制,有應該是這樣的:

refs: { 
    bloglist: 'blog list' 
}, 

control: { 
    bloglist: { 
    itemtap: 'fetchAPI2' 
    } 
}, 
fetchAPI2: function (list,index,target,record){ 
    id = record.get('contentId'); //this is your id for using API2. 
    Ext.data.JsonP.request({ 
      scope: this, 
      url: API2_URL, 
      callbackKey: 'callback', 
      params: {your params for API2 here}, 

      callback: function(success,result) { 
          // whatever you want to do here 
      }   
     }); 
} 
+0

嗨Thiem Nguyen,我仍然困惑,我的代碼的哪一部分應該插入你給我的代碼?幫助我請你: –

+0

你想要的任何控制器 –

+0

嗨蒂姆,我不介意控制器,我想要的就是讓它抓取使用contentID的確切內容。但我不知道如何將代碼添加到我自己的代碼中以使其工作 –

1

每這裏的煎茶文檔(下挖):http://docs.sencha.com/touch/2-0/#!/guide/first_app

您需要添加一個監聽器和一個細節面板您的配置,使用此代碼(不需要引用contentId,您只需從原始Feed中提取描述屬性 - 其中包含內容):

detailCard: { 
    xtype: 'panel', 
    scrollable: true, 
    styleHtmlContent: true 
}, 

listeners: { 
    itemtap: function(nestedList, list, index, element, post) { 
     this.getDetailCard().setHtml(post.get('description')); 
    } 
} 
+0

感謝你的回覆dbaseman,int他這個例子,在這個例子中http://docs.sencha.com/touch/2-0/#!/guide/first_app,他們調用一個API,其中所有的描述屬性和一切都在相同的API。在我自己的情況下,我有2個API,第二個API將描述保存到第一個API中......當您單擊API1中的列表時,contentID應該能夠訪問API2並檢索所需的信息。 –