Javascript 如何在angular.js控制器中添加google地图?

Javascript 如何在angular.js控制器中添加google地图?,javascript,angularjs,google-maps,Javascript,Angularjs,Google Maps,所以,我对angular还是个新手,很难实现GoogleMapAPI。我不断地犯错误: Uncaught InvalidValueError: initialize is not a function. 我在脚本标记中有以下内容: <script src="https://maps.googleapis.com/maps/api/js?key=MY API KEY GOES HERE&callback=initialize" async defer></scr

所以,我对angular还是个新手,很难实现GoogleMapAPI。我不断地犯错误:

Uncaught InvalidValueError: initialize is not a function.
我在脚本标记中有以下内容:

<script src="https://maps.googleapis.com/maps/api/js?key=MY API KEY GOES HERE&callback=initialize"
    async defer></script>

但由于我的函数initialize()位于控制器内,它无法识别它。如果我把函数放在控制器之外,它会识别它。但是因为我在控制器中定义了所有数据,所以我需要在控制器中定义这些数据。我甚至不知道我该问什么,但我只需要让地图显示出来。有什么想法吗?

你必须阅读这篇文章并使用简单的谷歌地图angularjs指令

我希望这对你有用


<>所有最好的

可以考虑加载谷歌MAPAPI,如下面的

所示
angular.module('myApp',[])
.controller('MyCtrl',函数($scope){
$scope.initialize=函数(){
var map=new google.maps.map(document.getElementById('map\u div'){
中心:{纬度:-34.397,液化天然气:150.644},
缩放:8
});
}    
google.maps.event.addDomListener(窗口'load',$scope.initialize);
});
html,正文{
身高:100%;
保证金:0;
填充:0;
}
#地图组{
高度:480px;
}


我认为这是一个双重的问题。您能用更简单的术语解释一下吗?我读了好几遍,但仍然有困难。我认为你应该添加几何体库和位置库,这样你就可以看到places@AlexP,通过查询字符串,例如:
https://maps.googleapis.com/maps/api/js?key=-你的-KEY-go-HERE-
所以我需要把`@AlexP,没错,但是没有
回调
参数,在我的例子中,一旦页面被加载,谷歌地图就会被初始化:
google.maps.event.addDomListener(窗口'load',$scope.initialize)是否可以从控制器手动刷新,并在需要时请求加载,而不是在页面加载?因为我仍然没有效果:(谢谢。每次我想刷新地图时,我都会通过分配新的
地图来实现我的目标。
$window.map=map;
。你的评论对我帮助很大!