Rails Geocoder Gem / Как сделать маркеры на gmaps кликабельными - PullRequest
0 голосов
/ 01 ноября 2018

Так что я действительно очень стараюсь здесь, но не могу заставить это работать самостоятельно.

Я создал gmap в своем веб-приложении. Это показывает компании из моей базы данных на карте с красными маркерами. Теперь я хочу добавить список событий к каждому маркеру, чтобы каждый раз, когда пользователь щелкает маркер, в списке справа от карты отображается только эта компания.

Я использовал драгоценный геокодер. Вот код на мой взгляд, который создает карту:

<div
    id="map"
    style="width: 100%;
    height: 600px;"
    data-markers="<%= @markers.to_json %>"   
></div>

А вот и мой файл карты:

import GMaps from 'gmaps/gmaps.js';

const mapElement = document.getElementById('map');
if (mapElement) { // don't try to build a map if there's no div#map to 
inject in
  const map = new GMaps({ el: '#map', lat: 0, lng: 0 });
  const markers = JSON.parse(mapElement.dataset.markers);
  map.addMarkers(markers);
  if (markers.length === 0) {
    map.setZoom(2);
  } else if (markers.length === 1) {
    map.setCenter(markers[0].lat, markers[0].lng);
    map.setZoom(14);
  } else {
    map.fitLatLngBounds(markers);
  }
  markers.clickable
}

import { autocomplete } from '../components/autocomplete';

// [...]
autocomplete();

Так что я довольно плохо справляюсь с Javascript, но я проверил свою страницу и обнаружил, что у каждого маркера есть свой «тег», называемый «usemap», за которым следует gmimap и номер компании в моей базе данных.

Я пытался все, чтобы выбрать эту «карту использования», но либо я слишком глуп, чтобы выбрать ее, либо она не работает таким образом, поскольку Javascript не может получить эту информацию оттуда.

Действительно надеюсь, что у кого-то есть простое решение здесь .. Заранее спасибо

...