2013-01-03 58 views
0

我需要知道如何獲取ArrayController在其內容數組中的對象位置。 比方說:EmberJs - 更新ArrayController內容的值

App.AnArrayController = Ember.ArrayController.set({ 
    content: [], 
}); 

App.AnObject = Ember.Object.set({ 
    name: null, 
    lastname: null, 
    id: 0 
}); 

現在,讓我們說,我已經插在兩個AnObject在AnArrayController的內容。 如何在不知道它在ArrayController中的位置的情況下更新特定對象的值,但只知道該對象的id屬性是X?

謝謝!

回答

1

首先:你爲什麼使用set方法?我希望您的代碼段是(你需要首先定義通過擴展類,()):

App.AnArrayController = Ember.ArrayController.extend({ 
    content: [], 
}); 

App.AnObject = Ember.Object.extend({ 
    name: null, 
    lastname: null, 
    id: 0 
}); 

如果ID是唯一可以使用filterProperty。調用App.initialize(),您可以通過路由器的helpt訪問控制器之後:

var controller = App.router.get("anArrayController"); 
anObject = controller.findProperty("id", 1); //find Object with id 1 
// do something with anObject 
+0

我的錯誤,我其實並沒有使用set方法 反正whay我; M努力是獲得一個對象的數組控制器的ID,只知道它是ID,但不是它在陣列上的位置(這是我需要找到的)。 因此,如果我從服務器加載所有陣列控制器的內容,我可以編輯任何位置的數據。 希望我明確自己。英語不是我的母語。 非常感謝! – Pablo

+1

對不起,但我不明白你的意見。也許你應該發佈一個更完整的源代碼片段。 – mavilein