首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从ngMap自动补全中获取坐标

从ngMap自动补全中获取坐标
EN

Stack Overflow用户
提问于 2017-04-11 02:25:44
回答 1查看 409关注 0票数 1

谷歌地图允许用户从自动补全库中获取坐标。我似乎找不到一种使用ngMap而不涉及"controller as“语法的方法。我想要获取坐标,并仅使用$scope将它们输出到控制台。

代码语言:javascript
复制
var app = angular.module("App", ["ngMap"]);

app.controller("MyCtrl", function ($scope, NgMap) {

$scope.placeChanged = function placeChanged() {      
    var place = this.getPlace();
    console.log(place.place.geometry.location)
  };
  
});
代码语言:javascript
复制
<html ng-app="App">

<script src="https://maps.google.com/maps/api/js?libraries=places"></script>
<script src="https://code.angularjs.org/1.3.15/angular.js"></script>
<script src="https://rawgit.com/allenhwkim/angularjs-google-maps/master/build/scripts/ng-map.js"></script>

<div ng-controller="MyCtrl">
<input type="text" name="address" places-auto-complete ng-model="address" on-place-change="placeChanged()">
</div>

</html>

EN

回答 1

Stack Overflow用户

发布于 2017-04-11 05:47:59

指令places-auto-complete在NgMap中具有on-place-changed

html:

代码语言:javascript
复制
<div ng-controller="MyCtrl">
  <input places-auto-complete ng-model='address' on-place-changed="getCoords()" />
</div>

脚本:当位置发生变化时,ng-model被更新,并且

代码语言:javascript
复制
var app = angular.module("App", ["ngMap"]);
app.controller("MyCtrl", function($scope, NgMap) {
  $scope.address = '';
  $scope.getCoords = function() { 
    NgMap.getGeoLocation($scope.address).then(function(latlng) {
      console.log(latlng.lat());
      console.log(latlng.lng());
    });
  };
})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43330345

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档