일반적으로 렌더링은 Backbone.View
'하위 클래스'에서 수행됩니다. 그래서 당신은 같은 것을 가지고
render: function() {
this.collection.each(function(model) {
// some rendering of each element
}, this);
}
this.collection
는 아마도 Backbone.Collection
서브 클래스를, 그리고 당신이 원하는대로 순서 그래서 당신은 그것을 얻기 위해 그 위에 underscore.js methods를 사용할 수 있습니다
this.collection.reverse().each(...)
this.collection.sort(function(m) { ... }).each(...)
등을
을
물론, 백엔드에서 하나의 요소를 얻고 있으며 모든 것을 다시 렌더링하지 않고 올바른 위치에 삽입하고 싶습니다! 따라서 그 경우에는 오래된 학교에 가서 rel
속성 또는 data
속성으로 정렬 키를 삽입하고 renderNewItem
(또는 이와 유사한) 메소드에서 insertAfter
또는 이와 유사한 jQuery를 사용하십시오.
reverse() - 메서드는 underscore.js 메서드에서 사용할 수 없습니다. – hbruce
하하 좋은 지적! 그래도 내 답변의 초석은 아니지. 당신은 다른 접근법을 사용하여 그것을 뒤집을 수 있습니다 :'_.each (_.toArray (this.collection) .reverse(), function (m) {...});'. 또는 coffeescript를 사용하는 경우 -1 단계로 for 루프를 작성할 수 있습니다. – rfunduk