knockout.js, if bağlama ile $ endeksi kullanarak


82

Değerine göre bazı işaretler göstermeye çalışıyorum, değeri $indexgösterebilirim ama onu bir ifbağlama ile kullanamıyorum , buradaki en iyi yaklaşım nedir?

<!-- ko if: $index===0 -->
  <div>some mark up here</div>
<!-- /ko -->

Yanıtlar:


152

$ endeksi gözlemlenebilir ve gözlemlenebilirler fonksiyonlardır. Bir ifadede gözlemlenebilirler kullandığınızda, değere erişmek için () formunu kullanmanız gerekir.

<!-- ko if: $index() === 0 -->

15

Gönderen nakavt bağlamaları sayfa

$ endeksi (yalnızca foreach bağlamalarında kullanılabilir)

Bu, bir foreach bağlama tarafından işlenen geçerli dizi girişinin sıfır tabanlı dizinidir. Diğer bağlama bağlam özelliklerinden farklı olarak, $ indeksi bir gözlemlenebilirdir ve öğenin indeksi her değiştiğinde güncellenir (örneğin, öğeler diziye eklenirse veya diziden çıkarılırsa).

Misal

<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>

Sonuçlar

Model #: UAI5021 | Catalog #: UIOY786
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.