即时通讯使用角谷歌地图库,但我似乎无法得到地图更新时,我动态地添加新的标记到我的模型。模型中的硬编码标记正确显示。角度谷歌地图更新标记模型
HTML
<ui-gmap-markers models="map.placeMarkers" coords="'self'" icon="'icon'" options="'options'" click="'onClicked'" modelsbyref="true"></ui-gmap-markers>
JS
$scope.map.placeMarkers = [
{
id: 1,
latitude: 45,
longitude: -74,
options: {},
title: 'Test 123'
},
{
id: 2,
latitude: 15,
longitude: 30,
options: {},
title: 'Test 1234'
}
];
以上工作正常,但是当我这样做:
var place = {
id: 3,
latitude: 455,
longitude: -574,
options: {},
title: 'Test 1233455'
};
$scope.map.placeMarkers.push(place);
该模型是更新而不是地图。我尝试过使用$ scope。$ apply(),但由于摘要循环已经在进行中,所以出现错误。
请尝试以下链接。这是一个使用角度js动态添加标记的工作示例。遵循这个例子,并希望它适合你:) [** LINK **](http://jsfiddle.net/svigna/pc7Uu/) – 2015-02-05 17:51:27
我有同样的问题,你有解决方案吗? Ben_hawk – kimo 2015-12-26 18:58:08
是的,我没有与这个图书馆工作了很长时间,但如果我记得正确地表现出性能改变。您需要更改数组引用才能刷新地图。尝试在您的places数组上使用角度副本,并在地图位置属性中设置结果。让我知道它是否有效。 – 2015-12-27 21:33:37