knockout.js sử dụng $ index với if ràng buộc


82

Tôi đang cố gắng hiển thị một số đánh dấu dựa trên giá trị của $index, tôi có thể hiển thị giá trị nhưng dường như tôi không thể sử dụng nó với một ifràng buộc, cách tiếp cận tốt nhất ở đây là gì?

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

Câu trả lời:


152

$ index là một hàm có thể quan sát được và có thể quan sát được. Khi bạn sử dụng khả năng quan sát trong một biểu thức, bạn phải sử dụng biểu mẫu () để truy cập giá trị.

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

15

Từ trang ràng buộc loại trực tiếp

$ index (chỉ có sẵn trong các ràng buộc foreach)

Đây là chỉ mục dựa trên 0 của mục nhập mảng hiện tại đang được hiển thị bởi một ràng buộc foreach. Không giống như các thuộc tính ngữ cảnh ràng buộc khác, $ index là một thuộc tính có thể quan sát được và được cập nhật bất cứ khi nào chỉ mục của mục thay đổi (ví dụ: nếu các mục được thêm vào hoặc xóa khỏi mảng).

Thí dụ

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

Kết quả trong

Model #: UAI5021 | Catalog #: UIOY786
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.