약 2 개월 동안 녹아웃을 배웠습니다. 어쩌면이 바보 같은 질문 일 수 있습니다. 텍스트 입력으로 필터링되는 목록을 만들려고했습니다. 이 필터는 동시에지도에서 마커를 숨기거나 표시합니다. 내가 정말로 문제가 knockout면 또는 html 바인딩면에 있는지 나는 모른다. 나를 올바른 방향으로 안내해 주시겠습니까? 이 문제와 코드의 샘플 코드입니다 : "keydown"다음에 필터링 된 목록 표시 knockoutjs를 사용하는 텍스트 상자
self.filteredPlaces = ko.computed(function() {
var filter = self.query().toLowerCase();
if (!filter) {
ko.utils.arrayForEach(self.markers(), function (item) {
item.setVisible(true);
//I used the console.log to verify that the info was being fetch
console.log(item.city);
});
return self.markers();
} else {
return ko.utils.arrayFilter(self.markers(), function(item) {
// set all markers visible (false)
var result = (item.city().toLowerCase().search(filter) >= 0);
item.setVisible(result);
return result;
});
}
});
이 또한 내가 바이올린 설치 당신이보기에 녹아웃 객체를 바인딩
initMap
에
ko.applyBindings(viewModel)
를 호출 할 필요가
here
녹아웃 오브젝트를보기에 바인딩하지 않습니다. 이렇게하려면 initMap 함수에서 "ko.applybindings (viewmodel)"을 사용해야합니다. 그러면 도시 바인딩이 나타납니다. 다음으로, 당신은 관찰 할 수있는 쿼리 (subscribe)를 호출해야합니다. –
나에게 어떻게 도와 줄 수 있니? –
Ok, 문제 없음. 먼저 initMap과 ko.applyBindings에 관해 제안한 작업을 수행하여 목록을 표시합니다. 지금 목록을 보시겠습니까? –