저는 현재 녹아웃을 배우고 있으며 현재 라이브러리로 얻을 수있는 다양한 것들을 실험하고 있습니다. 내가 옳은 일을하려고하는 한 가지는 '라이브 검색'을 만드는 것입니다. (codepen 아래)녹아웃 라이브 검색
내가 받고있는 오류는 정의되지 않은 'toLowerCase'를 올바르게 읽을 수 없습니다. 내게는 내 코드가 제대로 보이고 어딘가에 신참 오류가 있다고 생각합니다.
self.tracks()의 데이터가 soundcloud에서 가져와 observableArray로 푸시됩니다. 내 HTML 템플릿은 'computedTracks'의 인스턴스를 모두 제거하면이 트랙을 완벽하게 렌더링합니다. self.tracks() 함수를 읽을 수없는 것처럼 보입니다.
HTML :
<input placeholder="Search..." type="search" data-bind="value: searchQuery">
<div class="view-tracks">
<ul data-bind="foreach: computedTracks">
<li data-bind="click: $root.goToTrack">
<span data-bind="text: track"></span>
</li>
</ul>
</div>
KO : 사람이 내 오류를 강조 할 수 있다면
self.computedTracks = ko.computed(function() {
return ko.utils.arrayFilter(self.tracks(), function(item) {
return item.track.toLowerCase().indexOf(self.searchQuery().toLowerCase()) >= 0;
});
});
이 많이 주시면 감사하겠습니다.
전체 데모 :
http://codepen.io/anon/pen/EHgdx
물론! 긴 하루 였어 ... – leaksterrr