问题标签 [ng-map]
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.
angularjs - angularjs:ngmap 和集群标记
在我的一个客户项目中,我正在使用 ngMap ( http://ngmap.github.io/ ),但我对这个“指令”有疑问:如何使用标记集群和这样的地图:
我在示例页面和代码中进行了搜索,但没有关于如何在我的情况下使用标记集群的文档。
有人使用这个 ngmap 吗?还是我需要更改 google map angularjs 指令?
谢谢。
angularjs - 在 $interval 回调中更改属性时 UI 不更新
我有一个定义背景 $interval 的服务。它监视本地存储以查看是否由于连接问题而没有进行某些服务器更新。当它找到一些更新时,它会定期尝试与服务器联系以获取更新,并在成功时将其从本地存储中删除。
成功后,回调还会更新角度视图/模型的一些属性。这些更改应该会导致 UI 更新,以及它们所做的各种控制器的代码中的其他地方。
但是在该后台服务的 $interval 回调中,更改不会导致 UI 更新。我认为 $apply 可能是某种失败,所以我添加了一个 $rootScope.$apply() 调用。但这会导致错误,因为 $digest 已经在进行中。
这告诉我在回调执行后 $digest 正在运行——这是我所期望的——但它不会导致 UI 更新。
然后我在服务中做了一个 $rootScope.$emit() ,在更新视图/模型之后,并在 UI 应该更新的控制器中监听事件。在侦听器中,我可以看到控制器所基于的视图/模型已由服务成功更新。
这是服务:
这是地图的控制器:
这是(部分)模板(依赖于 ngMap):
那么为什么UI没有更新呢?
angularjs - AngularJS:当元素的属性发生变化时强制 ng-repeat 更新
我正在与角度手表阵列的方式搏斗。我有以下标记:
pin() 返回的每个单独的 pin 都有许多属性、子属性等。其中一个子属性控制标记颜色。当该子属性更改时,我希望 UI 更新。
因为 ng-repeat 似乎 $watch 只是基于对集合的更改,所以如何实现这一点并不明显。我认为我的跟踪函数 iconKey() 会这样做,因为它根据子属性的值返回不同的值。但这没有用。
另一件事:子属性在回调中从在指令下运行的 $interval 更改。我之所以提到这一点,是因为在之前的一篇文章中,有人认为可能存在上下文/范围问题。
但是,即使我在 UI 控制器中的事件侦听器中进行了更改(事件在 $interval 回调的“成功”子句中引发),它仍然不起作用。
这就是为什么我认为问题只是角度没有注意到 iconKey(); 的变化。它的行为就像 ng-repeat 的所有 $watches 都是数组的长度。子属性更改时不会更改。
更新
我创建了一个 plunker 来演示我面临的问题。您可以在http://plnkr.co/edit/50idft4qaxqw1CduYkOd找到它
这是我正在构建的应用程序的精简版本,但它包含基本元素(例如,保存有关地图引脚信息的数据上下文服务和用于切换引脚数组元素之一的子属性的 $interval 服务) .
您可以通过单击菜单栏中的开始来开始更新周期(您可能需要稍微向下拖动地图以将两个图钉都放在完整视图中)。它应该切换每个引脚的颜色,或者,每个 5 次,每 2 秒一次。它通过在控制器中定义的侦听器中切换 pin 对象的 isDirty 属性的值来实现这一点。该事件由 $interval 服务引发。
如果您在测试周期中中断第 22 行,您将看到返回的图钉图标。所以角度内的东西正在要求信息......但引脚颜色没有改变。
我期待有人迅速指出与我的任何理论无关的愚蠢错误:)。提前为我戴的任何眼罩道歉。
更新 2
在查看响应中的代码片段后,我简化了我的 plnkr 并证明 angular 实际上是在子属性更改时更新 UI。所以这似乎是 ng-map 中的一个限制或错误。
angularjs - ngMap中的ngRepeat简单不起作用
我以为我以前做过这种事情,但我一直在尝试做一些简单的事情。这是我使用 ngMap 的 HTML
然后我有一个控制器:
我最终在 0,0 处得到了 6 个标记,而不是在阿姆斯特丹的 2 个 - 请参阅Plnkr。有什么想法有什么问题吗?
angularjs - 使用 ng-map 指令的自定义指令,dom 更改但未反映在地图上
我正在尝试使用 ngMap 指令之一创建自定义指令。形状,具体来说。
当我直接在 ngMap 的 map 指令中使用 shape 指令时,模型的变化会被插值并反映在 map 上。
但是当我使用 Shape 创建自定义指令时,dom 会发生变化,但在 Map 上没有创建可见的形状。
我在这里创建了一个 plunker:
http://plnkr.co/qrRxYxORvdKdLANg50Yn
我错过了什么。谢谢
google-maps - ng-map:如何将原点设置为当前位置以获取方向?
我正在使用 AngularJS 和 ng-map。
如何将路线原点设置为我当前的位置?
我试过了:
但这会导致地图不渲染任何东西。
感谢您帮助我将当前位置设置为原点。
卡尔
angularjs - ngmap 用于谷歌地图中的标记
我正在使用 ngmap 和 angularjs 在谷歌地图上生成点。我在我的本地服务器上工作得很好,但是当你移动到生产服务器时不显示地图。看到控制台看到以下错误:“错误:未定义谷歌”
我的代码:
angularjs - 谷歌地图标记更新点击 Div
我是谷歌地图的新手。现在我正在使用 ng-map 和 angularjs。当我单击 div 时,我发现很难在制造商上放置动画(如反弹)。谁能告诉我我该怎么做?