의 값을 기반으로 일부 마크 업을 표시하려고합니다. 값을 $index
표시 할 수 있지만 if
바인딩 과 함께 사용할 수없는 것 같습니다. 여기서 가장 좋은 방법은 무엇입니까?
<!-- ko if: $index===0 -->
<div>some mark up here</div>
<!-- /ko -->
답변
$ index는 옵저버 블이고 옵저버 블은 함수입니다. 식에서 관찰 가능 항목을 사용하는 경우 값에 액세스하려면 () 형식을 사용해야합니다.
<!-- ko if: $index() === 0 -->
답변
로부터 녹아웃 바인딩 페이지
$ index (foreach 바인딩 내에서만 사용 가능)
foreach 바인딩에 의해 렌더링되는 현재 배열 항목의 0부터 시작하는 인덱스입니다. 다른 바인딩 컨텍스트 속성과 달리 $ index는 관찰 가능하며 항목의 인덱스가 변경 될 때마다 업데이트됩니다 (예 : 항목이 배열에 추가되거나 제거되는 경우).
예
<div data-bind="foreach: details.additionalDetails">
<!-- ko if: $index() !== 0 -->
<span> | </span>
<!-- /ko -->
<span data-bind="text: name"></span> <span data-bind="text: value"></span>
</div>
결과
Model #: UAI5021 | Catalog #: UIOY786