2

私はUberのようなアプリをやっています。ライブ トラッキングでは問題ありませんが、車両をどこかに向ける必要がある場合、地図上に 3 つのマーカーが表示されます。最初のマーカー ライブ トラッキング。2 番目が開始点で、3 番目のマーカーがターゲットです。通常、食料品店は 2 つあるはずです。私の現在地と目的地。どこかに問題がありますが、問題を解決できませんでした。この問題を解決するにはどうすればよいですか?

このリクエストなしで動作するライブ トラッキング:

<script type="text/javascript">
var timer_control = 0;
var lati,longi;
timer_control = setInterval(req_control,15000)

    function onLocationFound(e) {

      if (current_position) {
          map.removeLayer(current_position);
      }
      var radius = e.accuracy / 2;
      current_position = L.marker(e.latlng).addTo(map).bindPopup("Test : {{ $car->test }}");
      lati = e.latlng.lat;
      longi = e.latlng.lng;
      $.get( "/trac/mobil?lati="+e.latlng.lat + "&longi=" + e.latlng.lng+"&car_id="+carid);
    }

    function onLocationError(e) {
      alert(e.message);
    }

    map.on('locationfound', onLocationFound);
    map.on('locationerror', onLocationError);
  
    function locate() {
      map.locate({setView: true, maxZoom: 16});
    }

    setInterval(locate, 10000);
  </script>

ルートリクエストに関して:

<script type="text/javascript">
    $.post( "{{ route('example.route.request') }}",
          {
            car_id:data.car_id
          },
          ).done(function(data2) { 
            if(data2!=0 || data2!=2)
            {
              document.getElementById("address1").setAttribute("value", data.address1);
              document.getElementById("address2").setAttribute("value", data.address2);
              clearInterval(req_control);
              if (current_position) {
                map.removeLayer(current_position);
              }
              example_data = L.Routing.control({
                waypoints: [
                    L.latLng(lati,longi),
                    L.latLng(data2.lati,data2.longi)
                ]
            }).addTo(map);
            }
          });
  </script>

ナビアプリとして使いたい。ターゲットに近づくと、ルートが更新され、2 つのマーカーのみが表示されるはずです。最初のマーカーには、現在の場所も表示されます。上記のスクリプト コードから緯度と経度の情報を取得しますが、更新されません。

ありがとう。

4

0 に答える 0