【问题标题】:Maker is not drawing after updating lat long in angularjs在 angularjs 中更新 lat long 后,Maker 未绘制
【发布时间】:2019-06-29 02:47:25
【问题描述】:

我将http://angular-ui.github.io/angular-google-maps/#!/ 用于谷歌地图,但标记仅在第一次绘制。如果我更新经纬度,那么唯一的地图是移动而不是标记。

这是我的代码:(当前位置)

navigator.geolocation.getCurrentPosition((position) => {
      vm.latitude_obj=position.coords.latitude;
      vm.longitude_obj=position.coords.longitude;
    });
          vm.map={center: {latitude: '28.454035292774627', longitude: '77.02379857578137' }, zoom: 12 };
          vm.options={scrollwheel: false};
          vm.marker = {
              id: 0,
              coords: {
                  latitude: 28.454035292774627,
                  longitude: 77.02379857578137
              },
              options: { draggable: true },
              events: {
                  dragend: function (marker, eventName, args) {
                      var lat = marker.getPosition().lat();
                      var lon = marker.getPosition().lng();
                      }
                  }
              };

更新位置后:

vm.map = {center: {latitude: vm.latitude_obj, longitude: vm.longitude_obj }, zoom: 12 };
            vm.options = {scrollwheel: false};
            vm.marker = {
            id: 0,
            coords: {
                latitude: vm.latitude_obj,
                longitude: vm.longitude_obj
            },
            options: { draggable: true },
            events: {
                dragend: function (marker, eventName, args) {
                    vm.lat = marker.getPosition().lat();
                    vm.lon = marker.getPosition().lng();
                    $scope.vm.listingModal.latitude=vm.lat;
                    $scope.vm.listingModal.longitude=vm.lon;
                    vm.locationSelected='Location Changed to '+vm.lat+', '+vm.lon;
                }
            }
            };

在此代码中,地图正在从当前位置移动到新位置,但标记不是。 谁能告诉我我做错了什么。

提前致谢。快乐编码

【问题讨论】:

    标签: javascript angularjs google-maps navigator


    【解决方案1】:

    在更新您的 lat 和 lng 时设置标记的位置

    marker.setPosition(myLatlng);
    

    其中 myLatlng 是格式对象

    myLatlng = {lat: latitude_value, lng: longitude_value}
    

    【讨论】:

    • 你能详细解释一下吗,或者给我一些链接,我可以找到它的详细信息
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-02
    • 1970-01-01
    相关资源
    最近更新 更多