Tôi muốn push
một mục mới vào số observableArray
, nhưng chỉ khi mặt hàng đó chưa có mặt. Có chức năng "tìm" hoặc mẫu được đề xuất nào để đạt được điều này trong KnockoutJS không?Làm cách nào để có điều kiện đẩy một mục vào một mảng có thể quan sát được?
Tôi nhận thấy rằng chức năng remove
trên observableArray
có thể nhận được chức năng truyền trong điều kiện. Tôi gần như muốn có cùng chức năng, nhưng chỉ đẩy nó nếu điều kiện được truyền vào là hoặc không đúng.
Điều này có so sánh tất cả các thuộc tính trên itemToAdd không? Tôi chỉ cần kiểm tra một thuộc tính Id. – jaffa
Điều này sẽ kiểm tra xem hai đối tượng có chính xác giống nhau hay không. Nếu bạn cần kiểm tra các thuộc tính riêng lẻ, thì bạn có thể sử dụng 'ko.utils.arrayFirst'. Tôi sẽ thêm một mẫu vào câu trả lời. –
Mẹo tuyệt vời, nhưng tôi phải thay đổi itemToAdd.id === item.id thành itemToAdd.id() === item.id(). Tôi đã đăng mã của mình trong câu trả lời tiếp theo. – Rake36