angularjs - Angularjs实现谷歌地图没有被渲染
问题描述
我正在尝试将谷歌地图包含在我的副项目中,但在观看了无数教程后,我似乎不知道为什么这不起作用。我能够解决的一种方法是将 src 脚本包含在 html 的 init 函数的正下方,然后在控制器文件中将 initMap() 函数写入 angular.module('breazehomeDesktop').controller( )。有人可以帮忙吗?
这是我的html
!doctype html>
<html>
<head>
<!-- Tab Title -->
<title>Local Scoop</title>
<!-- Javascript Import-->
<script src="../scripts/controllers/localscoop.js"></script>
<script async defer src="https://maps.googleapis.com/maps/api/js?key=KEY_GOES HERE"></script>
</head>
<body ng-app="breazehomeDesktop" ng-controller="LocalScoopCtrl">
<!-- MAP -->
<div id="map" ng-init="initMap()">
<script>initMap()</script>
</div>
</body>
</html>
这是我的控制器
angular.module('breazehomeDesktop').controller('LocalScoopCtrl', function($scope, $rootScope, $location, $localStorage, $routeParams, $anchorScroll, $http, Properties, Amenities, Bilingual,toasts,Users,Crime, Map, BASE_URL, IMAGE_URL, ModalService, History) {
$scope.initMap = function (){
var map = new google.maps.Map(document.getElementById('map'),{
zoom:8,
center: {
latitude:25.7617,
longitude:-80.191790
}
}
)};
});
解决方案
我没有看到您提到的任何地方ng-controller
并ng-init
用来调用该方法
<body ng-app="breazehomeDesktop" ng-controller="LocalScoopCtrl">
<div id="map" ng-init="initMap()" >
</div>
推荐阅读
- laravel - 如何关联地创建数据?laravel 雄辩
- apache-kafka - 启动 kafka 服务器时出错:“**此时出现意外的不同应用程序**”
- inline - 如何将上传的 X3D 文件与内联节点结合起来?
- nearprotocol - 转移到不存在的收件人
- c++ - 对向量进行排序后如何更改索引值?C++
- php - 中间件 laravel 在 Route::any 中不起作用
- node.js - 来自 Node 的带有分块响应流的 Axios 请求
- python - 如何在 Gensim 中将模型、字典和语料库保存到磁盘,然后再次加载它们?
- pointers - 局部变量的返回地址产生意外的值
- angular - 角度变化检测:如何仅刷新某些项目?