Tôi đang cố gắng sử dụng phương pháp 'Tìm' trên bộ sưu tập nhưng không cho tôi kết quả như mong đợi:Sử dụng dấu gạch dưới Phương pháp 'tìm' trên Bộ sưu tập xương sống
Tôi có mô hình cơ sở không có mặc định và bộ sưu tập mặc định. Các mô hình trong bộ sưu tập của tôi chỉ có hai thuộc tính: tranId (một guid là một chuỗi), và thực hiện (một hàm để thực hiện).
Tôi đang cố gắng để tìm mục trong bộ sưu tập phù hợp với tranId mà tôi vượt qua nó ...
var tranId = "1a2b3c";
var found = _.find(myCollection, function(item){
return item.tranId === tranId;
});
Tìm thấy luôn là undefined, mặc dù chương trình gỡ rối cho thấy bộ sưu tập của tôi không, thực sự có một mục trong đó tranId khớp với biến của tôi. Tôi không thể thiết lập một điểm ngắt tại câu lệnh return để xem item.tranId nào tương đương với. Tôi cũng đã thử điều này ...
var found = _.find(myCollection, function(item){
return item.get('tranId') === tranId;
});
Nhưng, điều tương tự. 'tìm thấy' luôn không xác định. Tôi làm gì sai ở đây?
Cảm ơn, điều đó đã hiệu quả. Tại sao phương pháp Underscore không hoạt động theo cùng một cách? Cũng cần lưu ý rằng tranId là một chuỗi, không phải là một số. Vì vậy, các typecasting là không cần thiết. –
@ JoelCDoyle nếu bạn muốn sử dụng phương pháp gạch dưới trực tiếp có thể tốt hơn là sử dụng myCollection.models vì nó là Array thô của các mô hình của bạn http://backbonejs.org/#Collection-models - typecast trong trường hợp có vấn đề với so sánh datatyping nghiêm ngặt. : D –
Tuyệt. Cảm ơn bạn rất nhiều! –