2
나는 내보기 모델에 다음 필터를 추가 한 :녹아웃 필터링
contactsViewModel.filterItems = ko.computed(function() {
var filter = this.filterInput().toLowerCase();
if (!filter || !this.hasEnoughChars()) {
// Simply keep the results if input is empty or less 3 chars are in it
return this.contacts();
} else {
// iterate through the JSON again
return ko.utils.arrayFilter(this.contacts(), function (item) {
// Return the objects that contain the filter term
// ko.utils.stringContains is not part of knockout
// Manually added to knockout-2.2.0.debug.js line 238
return ko.utils.stringContains(item.firstName().toLowerCase(), filter)
|| ko.utils.stringContains(item.lastName().toLowerCase(), filter)
|| ko.utils.stringContains(item.email().toLowerCase(), filter)
|| ko.utils.stringContains(item.company().toLowerCase(), filter);
});
}
}, contactsViewModel);
어떻게 내가 stringContains를 호출 횟수를 줄임으로써이 코드를 향상시킬 수 있습니까? 내가 쓸 수 있도록하고 싶습니다 :
return ko.utils.stringContains(item.FirstName().toLowerCase() || item.lastName().toLowerCase() || item.email().toLowerCase() || item.company().toLowerCase(), filter);
를하지만 한방에서이
을 수행 할 때 stringContains 올바른 값을 반환하지 않습니다이
stringContains: function (string, contains) {
string = string || "";
return string.indexOf(contains) != -1;
}
당신의 도움이 많이 감사합니다