google maps - Establecer marcador visible con knockout JS ko.utils.arrayFilter
google-maps knockout.js (1)
Todo lo que necesita es establecer la visibilidad del marcador para que coincida con si se encuentra:
if (!filter) {
// this is new
ko.utils.arrayForEach(self.listLoc(), function (item) {
item.marker.setVisible(true);
});
return self.listLoc();
} else {
return ko.utils.arrayFilter(self.listLoc(), function(item) {
var result = (item.title.toLowerCase().search(filter) >= 0)
item.marker.setVisible(result); // this is a new line
return result;
});
}
Nota: a menos que esté admitiendo navegadores especialmente antiguos, puede utilizar el método de filtro Array en lugar de la arrayFilter
de Knockout y .foreach
lugar de arrayForEach
.
Hola chicos, estoy tratando de crear una aplicación que establezca los marcadores adecuados visibles cuando se está realizando una búsqueda directa.
Básicamente la aplicación es. Cuando alguien hace una búsqueda en la lista que está debajo, filtra la lista y hace que solo los marcadores asociados con la lista de filtros estén visibles en el mapa. He creado un ko.utils.arrayFilter y estoy intentando establecer solo el elemento.marker.setVisible (true)
Mi enlace de Github es https://github.com/Aimpotis/map3
Gracias de nuevo y mucho respeto a la comunidad me está ayudando a aprender mucho