我目前使用this在地图上获取自定义标记。
我在plunker上没有错误地工作,但在我自己的网站上没有错误(即使我使用相同的脚本src链接)
在我自己的页面上ng-repeat工作,但是它给出了2个非常长的错误,告诉我一个$ digest循环
这是我的清单:
$scope.list = [{ name: 'test', pos: [41, -87] }, { name: 'test2', pos: [40, -86] }];
这就是HTML:
<ng-map zoom-to-include-markers="auto" style="height:200px;width:400px;">
<marker ng-repeat="item in list" position="{{item.pos}}"></marker>
</ng-map>
上述内容并未给出错误,但
<ng-map zoom-to-include-markers="auto" style="height:200px;width:400px;">
<custom-marker ng-repeat="item in list" position="{{item.pos}}">
<div style="background-color:white;border: 1px solid black;">this is a test</div>
</custom-marker>
</ng-map>
一样。每次我将一个项目添加到列表中时,它还会给我2个额外的错误,但它仍能正常工作。
我不知道为什么它适用于plunker但不适用于我自己的网站,我使用相同的版本使用ASP.NET 5提供服务。在我自己的网站上也使用ng-animate,ng-resource和一堆与角度无关的东西,但这不重要。 (我希望)
如果你需要它,我的控制器正在使用这些:
function ($scope, $rootScope, restData, NgMap) {
和app模块正在使用:
var app = angular.module('app', ['ngResource', 'ngMap'])
答案 0 :(得分:0)
自己修正了。
在我提出这个问题之前,我尝试使用this来解决我的问题,但我可能已经忘记了它的一部分,因为它第二次尝试时它会起作用。
您需要使用
$scope.positions = angular.copy(data)
并绑定在单独的位置&#39;变量并复制它,如果你想重新绑定,你不能直接从数据本身的前端绑定。