angularJS使用有角度的谷歌地图找到位置/地名

时间:2015-08-07 05:40:37

标签: javascript angularjs html5 google-maps geolocation

我想找到用户在地图上选择的location name。 目前我正在获得经纬度。 但无法获得位置名称。

我正在使用angularJSangular-google-maps 2.1.5.

这是html。

<ui-gmap-google-map center="map.center" zoom="map.zoom" draggable="true" options="options" events="map.events">

</ui-gmap-google-map>

JS:

$scope.map = {
      center: {
        latitude: 21.0000,
        longitude: 78.0000
      },
      zoom: 4,
      events: {
        click: function(mapModel, eventName, originalEventArgs,ok) {
          var e = originalEventArgs[0]; 

            objOneDevice.dev_latitude = e.latLng.lat();
            objOneDevice.dev_longitude = e.latLng.lng();

            $scope.templatedInfoWindow.show = true;

        }
      }
    };
    $scope.options = {
      scrollwheel: true
    };

感激不尽。

3 个答案:

答案 0 :(得分:12)

这是我使用Reverse geocoding完成的工作。

$scope.map = {
      center: {
        latitude: 21.0000,
        longitude: 78.0000
      },
      zoom: 4,
      events: {
        click: function(mapModel, eventName, originalEventArgs,ok) {
          var e = originalEventArgs[0]; 

            var geocoder = new google.maps.Geocoder();
            var latlng = new google.maps.LatLng(e.latLng.lat(), e.latLng.lng());

            geocoder.geocode({ 'latLng': latlng }, function (results, status) {
                    if (status == google.maps.GeocoderStatus.OK) {
                        if (results[1]) {

                            console.log(results[1].formatted_address); // details address
                        } else {
                            console.log('Location not found');
                        }
                    } else {
                        console.log('Geocoder failed due to: ' + status);
                    }
                });


        }
      }
    };

答案 1 :(得分:1)

根据纬度/经度对象,您可以使用Google Map API将位置映射到大致地址。 您可以使用地理编码API将位置映射到地址和地址。

Geocoder.geocode( { 'latLng': latLngObject }, callbackFn);

Here是Google Map API进行地理编码的链接。

答案 2 :(得分:1)

试试这些链接 https://developers.google.com/maps/documentation/javascript/examples/geocoding-reverse?csw=1

使用地理编码API将位置映射到地址和地址。 http://code.google.com/apis/maps/documentation/javascript/services.html#Geocoding

Geocoder.geocode({'latLng':latLngObject},callback);

http://wbyoko.co/angularjs/angularjs-google-maps-components.html

希望它有所帮助!!!