Как определить точки останова с помощью ioni c -native- google-maps? - PullRequest
0 голосов
/ 28 января 2020

Мне нужно отобразить карту в моем приложении с начальной точкой, которая является текущим местоположением пользователя, и мне также нужно отобразить точки остановки, где он должен go с полной траекторией.

Я бы хотелось бы знать, могу ли я сделать это с помощью ionic-native-google-maps, я видел, что DirectionsService недоступен, и поэтому я не знаю, смогу ли я достичь того же результата с помощью родного плагина Ioni c v4.

Я не могу загрузить скрипт, когда у меня нет соединения inte rnet, я загружаю этот скрипт в index. html, если я не могу сделать что-то похожее на изображение ниже.

Можно ли загрузить скрипт в автономном режиме и отобразить маршрут в автономном режиме?

Можно ли использовать ту же функциональность с ioni c -native- google-maps?

myComponent.ts

public async loadMap() {

    const wayPoints = [];
    const directionsService = new google.maps.DirectionsService();
    const directionsDisplay = new google.maps.DirectionsRenderer();
    const locais = this._pService.planejamentoSelected.itens;
    const currentLocation = await this._pService.getLocation();

    this.map = new google.maps.Map(this.mapElement.nativeElement, {
      zoom: 13, center: new google.maps.LatLng(
        currentLocation.latitude,
        currentLocation.longitude)
    });

    directionsDisplay.setMap(this.map);

    for (const item of this._pService.planejamentoSelected.itens) {
      const locationItem = new google.maps.LatLng(
        Number(item.endereco.latitude),
        Number(item.endereco.longitude))

      wayPoints.push({
        location: locationItem,
        stopover: true,
      });
    };
    const request = {
      origin: new google.maps.LatLng(
        currentLocation.latitude,
        currentLocation.longitude),
      destination: new google.maps.LatLng(
        Number(locais[locais.length - 1].endereco.latitude),
        Number(locais[locais.length - 1].endereco.longitude)),
      waypoints: wayPoints,
      optimizeWaypoints: true,
      provideRouteAlternatives: false,
      travelMode: 'DRIVING'
    };

    directionsService.route(request, function (response, status) {
      if (status == 'OK') {
        directionsDisplay.setDirections(response);
      }
    });
  }

enter image description here

...