2013-05-23 2 views
2

정렬 순서가 각 항목의 계산 된 속성에 따라 달라지는 자체 정렬 순서를 유지하는 ko.observableArray을 갖고 싶습니다.Sorted ObservableArray 유지 보수

나는이 일을하고 싶습니다 :

var threads = ko.observableArray().extend({ sorted: Thread.desc }); 

나는 익스텐더를 사용하는 시도 jsfiddle을 가지고 있지만, 관찰 아동에 대한 변경 사항은 재 분류가 발생하지 않습니다.

코가 어떻게 작동해야합니까, 아니면 단계가 빠져 있습니까?

편집 : 종속성이 잘못되었습니다. messages을 변경하면 threads이 변경된 것으로 표시되지 않습니다. 물론 preview이 정렬 방법 내에서 호출 되더라도 물론 정렬되지 않습니다.

여전히 어린이에게 의존하여 정렬 된 목록을 유지하는 간결한 솔루션을 만들고 있습니다.

model.threads = ko.observableArray(); 
model.threadsDesc = ko.computed(function(){ 
    return model.threads().sort(Thread.desc) 
}); 

작품 :

+0

jsfiddle은'msg5, msg2, msg1'을 보여줍니다. 네가 기대하는 바가 아냐? – muratgu

+0

setTimeout에서 sort를 "수동으로"호출 한 후에 만 ​​표시됩니다. 나는 새로운 메시지가 추가 될 때 그것이 일어날 것을 기대한다. – Andrew

답변