问题标签 [angularjs-google-maps]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
972 浏览

angularjs - 如何通过范围更改形状的样式?

我正在使用自定义的GoogleMap AngularJS Directive,这是不太流行的 GitHub 版本。我使用它是因为我对另一个处理事件的方式不满意。

我有一个充满地图形状的 GeoJSON 文件。我想让它具有交互性,以便您可以选择每个区域。所以我已经设法让初始区域选择和区域取消选择工作,但是如果你选择一个区域然后选择另一个区域,它应该改变旧选择区域的样式并更新新区域。

我遍历 GeoJSON 文件并创建范围。

然后使用和 ng-repeat 将它们添加到地图中。

然后我添加事件监听器。这两个用于悬停效果。

这个是当一个区域被选中的时候

另外还有一个自定义函数来计算所选区域的中心。

如何从范围更新形状的样式?普朗克

0 投票
2 回答
376 浏览

angularjs-google-maps - 标记点击事件的性能很差

我对标记上的点击事件的性能有疑问。

这是我的地图视图:

这是一个调用相同功能的按钮(相同的视图和控制器):

这是我的功能:

当我单击按钮时,console.log 会出现,并且位置更改会立即发生。当我单击标记时,console.log 会立即出现,但位置更改最多需要 5 秒才能发生。

知道这怎么可能吗?

0 投票
1 回答
1108 浏览

angularjs - AngularJS google maps infoWindow 未编译

我尝试使用 AngularJS 实现谷歌地图 infoWindow。

我有一个模板<div>{{foo}}<br/>,有$scope.foo="bar"

我想查看值为“bar”的信息窗口,而不是查看“{{foo}}”。因此,我用它编译并设置了内容,但还没有运气。

有些人可能认为这与 Google Maps InfoWindow 中的 AngularJS ng-include重复 ?,但我想动态编译内容。

这是我现在拥有的代码,http ://plnkr.co/edit/RLdAcaGz5FfmJEZi87ah?p=preview

我在想$scope.apply(),但无法在代码中运行。

有没有办法让谷歌地图 InfoWindow $compiled?

0 投票
1 回答
1573 浏览

angularjs - 角度中的谷歌地图无法正确更新地图

我正在使用 ng-map google maps angular 库,当我在浏览器中重新加载页面时,地图没有更新时遇到问题。我还注意到浏览器要求分享我当前的位置,我是否同意分享位置并不重要,如果我下次访问相同的页面,地图会正确更新(无需完全重新加载页面)

在此处输入图像描述

0 投票
1 回答
490 浏览

angularjs-google-maps - Angular Js ng-map 中的定位服务

嗨,我一直在使用这个插件,它比任何其他插件都酷。但现在面临一种情况,我需要在我的应用程序中使用 Google 方向服务。. 所以请帮我解决这个问题。.

0 投票
2 回答
3612 浏览

angularjs - Angular.js 将基本路径添加到绝对路径 URL

我对 angular.js 完全陌生,所以对于这样一个愚蠢的问题,我感到很抱歉。但也许它会对其他初学者有所帮助。

我正在从其他人创建的示例项目中学习,但我使用的是本地 IIS(而不是 IIS Express 或 VS 开发服务器)。所以我的基本路径是http://localhost/SampleProject

示例项目包含此 $http.get

这适用于“ http://localhost:1234 ”之类的基本 URL ,但在我的情况下,我得到了

Failed to load resource: the server responded with a status of 400 (Bad Request)

因为请求 URL 是

http://localhost/SampleProject/https://maps.googleapis.com/maps/api/geocode/json?sensor=false

谁能告诉我为什么 angular.js 即使使用绝对路径 URL 也要在基本 URL 前添加?

谢谢,汤姆

0 投票
1 回答
3195 浏览

angularjs - ng-map:设置缩放级别时无法读取未定义的属性“应用”

我在 angularjs 应用程序中使用 ngMap。当我尝试在地图元素上设置缩放时遇到错误。这是来自 Chrome 控制台的错误消息:

这是在我的地图元素的缩放属性时触发的:

被绑定到我的角度控制器:

dataContext 是在应用程序中公开各种状态变量的服务。我还尝试通过函数设置 $scope.zoom ,但结果相同。

错误发生在 ng-map.js 文件的第 1568 行:

在试图追踪正在发生的事情时,我遵循了设置中心和设置缩放的执行(设置中心不会导致问题)。设置中心执行第 1568 行并继续其愉快的方式。

设置缩放(通过 setZoom 函数)会导致 ng-map.js 中第 196 行的代码执行:

第 205 行导致异常,导致谷歌地图的 main.js 文件中出现错误。

知道是什么原因造成的吗?以及如何解决它:)?

可能的解决方案

多玩一点,我注意到它本身并没有设置缩放级别,这会导致问题。它实际上是 zoomchanged 事件触发的结果 >>after<< 缩放改变。

第一次在地图上设置缩放,第 204 行:

评估为空。我不确定为什么会这样,因为我不明白那条线在做什么。

然而,未来对缩放的更改使同一行 204 解析为 f 的非空值。

因此,作为一种解决方法,我将第 205 行和第 206 行括起来,如下所示:

错误消失了。

0 投票
1 回答
2360 浏览

angularjs - ng-map:在局部视图中初始化地图

我正在尝试在局部视图中使用 ng-map 库。它在页面的初始设置(即第一次创建局部视图时)工作正常。

但是,如果我导航到不同的局部视图(例如,通过单击我在地图上放置的标记)然后点击浏览器的后退按钮,事情就会崩溃。

地图对象似乎存在于 $scope 中,但它没有“连接”到元素。因此,例如,调用 $scope.map.getBounds() 会导致返回空值。

如果对传入 mapInitialized 事件处理程序的 map 变量调用 getBounds() 也是如此。

消除对 getBounds() 的调用——我用它来提取信息以创建标记——消除了未定义值错误。但是地图本身从未被初始化。视口只是一个大的灰色矩形。我认为这进一步证明了地图 html 元素在重新创建局部视图时没有“连接”到库代码。

逐步执行 Map 指令初始化

当 map 指令第一次执行时(即在初始页面加载时),从 angular 传递给初始化的 attrs 对象包含一个有效的中心和缩放。

但是当该指令随后在返回页面时被初始化时(即,当重新创建局部视图时),只有缩放被正确定义。中心是“,”,没有意义。

我不确定为什么第二次忽略 center 属性值,但这似乎是问题的根源。不幸的是, attrs 设置在 angular 库中,我没有时间去探索。希望这可以帮助。

0 投票
2 回答
7050 浏览

javascript - Angularjs - ng-map - Google Maps Javascript API v3 - 如何为多个标记设置最佳缩放

我在 angularjs 应用程序中使用ngMap
我正在显示带有多个标记的谷歌地图,onclick of Open map! button并且地址数组中存在第一个地址,我将其作为地图中心。

这是Plunk

例子.js:

索引.html:

所有与地址相关的标记都显示正常。

但是如何为地址数组自动设置最佳缩放,这里这些地址是我从数据库中获取的,所以这些地址会根据某些条件针对每个请求进行更改。

0 投票
1 回答
440 浏览

angularjs - 加载时超出 angularjs-google-maps / ng-map 堆栈限制

我正在尝试使用以下代码让 angularjs-google-maps 在 angularjs 项目中显示地图。(仅显示相关的代码部分。)

在 index.html 中:

在 app.js 中:

...

在 _map.html 中:

mapController.js 中的 mapController 已实例化且为空。

在 Firefox 中,我得到一些无限循环,数百个导航栏相互叠加,直到崩溃,在 Chrome 中,我得到超时而没有显示任何内容(只是等待 rawgit.com)并设法获得“超出堆栈大小”错误一次,可能表示循环引用?谷歌地图的延迟实例化不是问题,“等待...”显示了为下载 js/css 代码访问的最后一个域,因此服务器没有关闭(尝试包括本地存储的 ng-map.min.js也)。

谢谢你。