为什么我会在角度和传单

时间:2016-04-19 04:26:43

标签: angularjs leaflet leaflet.draw

我在不同的文件中设置了不同的组件,但是当我聚合搜索输入时,我在本地出现了这个错误:

angular.js:13424 Error: Map container not found.

和plunker:

angular.js:13424Error: Map container is already initialized.

奇怪的是地图效果很好。怎么了?

Code

1 个答案:

答案 0 :(得分:0)

Working Demo

您已将地图初始化两次,一次在BaseMapController,另一次在inputController

BaseMapController中,替换

_map = BaseMapService.mapElement();

$scope.map = BaseMapService.mapElement();
_map=$scope.map;

inputController中,替换

BaseMapService.AutoComplete(_searchInputId).bindTo('bounds', BaseMapService.mapElement());

BaseMapService.AutoComplete(_searchInputId).bindTo('bounds', $scope.map);

希望能解决你的问题。

<强>更新

在您的演示中,自动完成工作正常,但未正确绑定到地图。例如,如果您搜索任何地方,您将无法在地图上找到此地点。我刚刚解决了你提到的错误。

对于自动完成,您使用的是Google API,对于basemap,您使用了Leaflet

我的建议是:不要混用这两种方法,而是使用Leaflet.GoogleAutocompleteGoogle Maps JavaScript API