谷歌角度地图-查看方向链接需要时间来更新出发地和目的地

时间:2018-09-19 05:56:55

标签: angular google-maps google-maps-api-3 map-directions

enter image description here我有下面的代码,可以通过单击查看方向按钮来捕获起点和终点。问题在于单击视图方向按钮时,href URL首先在onclick事件完成其执行之前加载。执行传递给click事件的函数执行后如何加载href URL。在下面的代码中,我正在getDirection方法中捕获起点和终点的经度和纬度,一旦值仅可用,就应该加载外部href网址。但是,在我的情况下,第一次单击时,由于起点和目的地的值不可用,因此URL具有空值,而从第二次单击开始,这些值才可用。

   <a (click)="getDirection(m.geometry.location.lat,m.geometry.location.lng)" href="https://www.google.com/maps/dir/?api=1&origin={{srcOriginLat}},{{srcOriginLng}}&destination={{srcDestinationLat}},{{srcDestinationLng}}&travelmode=driving" target='_blank'>Directions</a></button>


getDirection(dirLat: any, dirLng: any) {
    let srcLat, srcLng;
    if ('geolocation' in navigator) {
      navigator.geolocation.getCurrentPosition((position) => {

      srcLat = position.coords.latitude;
      srcLng = position.coords.longitude;
      console.log('srcLatsrcLng1', srcLat, srcLng);
      this.dir = {
        origin: { latitude: srcLat, longitude: srcLng },
        destination: { latitude: dirLat, longitude: dirLng }
      };
         this.srcOriginLat = this.dir.origin.latitude;
      this.srcOriginLng = this.dir.origin.longitude;
      this.srcDestinationLat = this.dir.destination.latitude;
      this.srcDestinationLng = this.dir.destination.longitude;
      });
    }

  }

0 个答案:

没有答案