2011-01-07 3 views
0

나는 backbone.js를 사용하고 있으며 컬렉션의 항목과 함께 목록보기 및 (2) 컬렉션의 항목에 대한 마커가있는지도가 있습니다. ListView 및 마커는 번호가 매겨 지므로 사용자는 목록보기에서 어떤 마커에 해당하는지 알 수 있습니다.Backbone.js에서 컬렉션의 ListViews를 동시에 번호 다시 매기기

사용자가 위치를 추가 및 제거 할 수 있도록하는보기로, 추가 및 제거 이벤트마다 목록 및 마커의 번호를 다시 매겨 야합니다. 예를 들어.

컬렉션 : [1, 2, 3, 4, 5]

제거 인덱싱 다시 전 [3]

컬렉션 : [1, 2, 4, 5]

컬렉션 재 인덱싱 : [1, 2, 3, 4]

.... 그러나 목록의 숫자는지도의 각 마커와 일치해야합니다.

이렇게하는 가장 좋은 방법은 무엇입니까? 목록보기와지도를 동시에 제어하고 다시 인덱싱을 수행해야하는보기가 하나 있습니까, 아니면 목록에 대한보기 하나와지도에 대한보기가 모두 있어야하며 둘 다 모델의 변경 사항을 수신하게해야합니다. 두 가지보기 옵션을 사용하면 색인 생성 후 목록보기 항목과 표식이 올바르게 매겨 졌는지 확인하는 방법은 무엇입니까?

+1

_re-ordering_이 아닌 _re-indexing_과 같은 의미가있는 것 같습니다. –

답변

2

동일한 컬렉션에 연결된 두 개의 다른보기가 있어야합니다.

수동으로 번호 매기기 및 부기가 필요하지 않게하려면 컬렉션의 모델 개체 색인을 식별자로 사용할 수 있습니다.

이렇게하면지도 표식과 목록 항목이 항상 자동으로 동일한 식별자를 갖게됩니다.

관련 문제