-1
我有一個應用程序沒有優化設計。我沒有時間重新編寫它,並需要找到解決以下問題的方法:主幹替換視圖/獲取視圖位置
在我的應用程序中,可能會將新元素添加到集合中,並且集合視圖中有一個函數用於決定是否在頂部或底部插入新元件:
if (someLogic) {
this.$container.prepend(newEl);
} else {
this.$container.append(newEl);
}
還有可能編輯元件;在這種情況下,應用程序首先破壞舊視圖,如果有任何:
item.trigger('destroyView');
然後呈現它。以某種方式將其在相同的地方呈現它以前:
+--------+ +--------+
| x1 | | x1 |
+--------+ +--------+
| x2 | | x2 |
+--------+ ====> +--------+
| x3 | | x3a |
+--------+ +--------+
| x4 | | x4 |
+--------+ +--------+
現在,由於一些變化,已編輯的元素是在頂部或在收集視圖的底部呈現。
我的問題是:我如何在與之前相同的位置渲染它。
我試圖在解釋here時在模型上添加一個監聽器,但是其中一些編程邏輯似乎已被破壞。
有沒有什麼辦法:
更換新繪製一個現有的看法?
或通過遍歷容器視圖元素
,得到相應的模型? (模型有其指示順序的屬性,所以可以使用
insertAfter
或insertBefore
)