2017-09-15 92 views
0

我试图在标记第一次或任何时候掉落时获得latlng,但是我不能。 在我的代码中,只有当标记处于打开状态时,我才能得到latlng。用ng-map获取标记的latlng angularjs

这是我的代码:

<body> 
    <div ng-controller="MyCtrl"> 
    <ng-map 
    zoom="16" 
    center="{{address}}" 
    style="width:500px; height:400px" 
    scrollwheel = "false"> 
     <marker 
     position="{{address}}" 
     title="{{address}}" 
     on-dragend="getpos($event)" 
     animation="DROP" 
     draggable="true"> 
     </marker> 
    </ng-map> 
    <br/>Address : <input ng-model="data.dir" /> 
    <input type="button" name="" id="" value="buscar" ng-click="buscar()"/> 
    <br /> 
    {{data.emp_lat}}-----------{{data.emp_lon}} 
    </div> 
</body> 
</html> 

这是我的JS:

angular.module('ngMap').controller('MyCtrl', function($scope) { 
    $scope.data = {}; 
    $scope.address = 'toronto canada'; 
    $scope.buscar = function(){ 
    $scope.address = $scope.data.dir; 
    } 
    $scope.getpos = function(event){ 
     $scope.latlng = [event.latLng.lat(), event.latLng.lng()]; 
     $scope.data.emp_lat = event.latLng.lat(); 
     $scope.data.emp_lon = event.latLng.lng(); 
    }; 
}); 

我的问题是如何获得的经纬度当标志下降? (这应该发生后设定的地址在我的输入)

感谢网友

回答

0

https://developers.google.com/maps/documentation/javascript/reference#Marker

你试过position_changed

https://plnkr.co/edit/0aIlq0iQfQkvU3nreVyY?p=preview

你可以尝试创建一个plunker这下一次?

注意:您不应该直接将控制器添加到ng-map模块中。

+0

我有这个https://plnkr.co/edit/9B7DMB9fq1b3Pitjsess?p=preview 我该如何实现position_changed? –

+0

谢谢@allenhwkim我要去尝试你的朋友 –

+0

谢谢我的朋友allenhwkim你的回答是正确的:D:D –