當前正在使用部分應用程序,需要從內容中克隆元素,然後修改克隆元素並保存回模型。我在保存克隆元素時遇到問題,不得不用克隆的元素替換舊的元素。什麼我目前做的是改變舊項目的所有屬性,像這樣(它的工作原理):如何替換陣列控制器中的內容元素
Blocks.replace = function(item1, item2) {
for(var k in item2) {
Ember.set(item1, k, item2[k]);
}
};
var selectedEmployment = this.get("controllers.employmentDataEntry").get("selectedEmployment");
var modelItem = content.findBy("@id", selectedEmployment["@id"]);
Blocks.replace(modelItem, selectedEmployment);
我試圖使用ArrayController replaceContent方法,但我得到一個錯誤說「無效的數組長度」當試圖運行以下代碼:
var employmentIndex = content.indexOf(modelItem);
this.replaceContent(employmentIndex, 0, selectedEmployment);
我這樣做是不正確的?有沒有更好的更換物品的方法? 注意:我使用JSON作爲模型。調用replaceContent時使用的ArrayController包含長度爲2的數組。
LOLZ,問題是我需要一個數組來傳遞在replaceContent – Jaime