화면 크기에 따라 열을 그리는 마리오네트 영역을 구현 했으므로 다양한 수의 열이 있습니다. 문제는 내가 가장 작은 높이로 열에있는 itemView를 찾고 싶다는 것입니다. 그러나 CompositeView appendHtml 메서드는 열의 높이를 정확하게 계산할 수 있기 전에 모든 itemViews를 추가하는 것처럼 보입니다. ItemView는 이미지가 있고 아직 렌더링되지 않으므로 정확하게 높이를 계산하지 않습니다. 나는이 방법은 모든 컬렉션 항목을 추가하고이 다른 곳에서이 논리를 수행하는 하나의 이유가 될 수 있다고 보았다로드 할 CompositeView 및 대기 이미지
appendHtml: (collectionView, itemView, index) ->
$("#column-container").waitForImages ->
smallest_column = 0
columns= $("#column-container").children().length
column_sizes = []
for i in [0...columns]
column_sizes[i] = $($("#column-container").children()[i]).height()
smallest_column = column_sizes.indexOf(Math.min.apply(Math,column_sizes))
target = $($("#column-container").children()[smallest_column])
target.append(itemView.el)
:
나는 나의 aproximation를 붙여 넣습니다.
PD : 석조물을 사용하고 싶지 않습니다.