AngularJS:NgMap-加载地图中心是'不受尊重
AngularJS: NgMap - On load map center isn't being respected
在这个使用NgMap的AngularJS SPA中,我在数据过滤上设置了映射引脚。在地图的初始加载时,地图以海洋中的某个地方为中心,而不是我在地图对象的中心参数中设置的坐标。我也尝试过在地图初始化中设置这个,但没有成功。
$scope.$on('mapInitialized', function(event, map) {
var myLatlng = new google.maps.LatLng(43.6650000, -79);
var mapOptions = {
draggable: true,
zoom: 4,
center: myLatlng
}
var map = new google.maps.Map(document.getElementById("map"), mapOptions);
});
<map zoom="3" center="[43.6650000,-79]" scrollwheel="false" zoom-to-include-markers="true">
<marker ng-repeat="site in filteredPins track by $index" position="[{{site.Latitude}},{{site.Longitude}}]" id="{{site.Id}}" title="{{site.SiteName}}"></marker>
</map>
如果不是通过<map>
中心参数或地图初始化时地图选项中的中心选项,在加载时如何设置初始地图位置?
Plunkr:http://plnkr.co/edit/u75fJT?p=preview
您的代码是正确的,初始地图中心正好在您指定的坐标处,问题似乎出在加载后更改地图中心的html zoom-to-include-markers="true"
上
<map zoom="3" center="[43.6650000,-79]" scrollwheel="false" zoom-to-include-markers="true">
删除zoom-to-include-markers="true"
,它将工作
您提供的经纬度似乎在海洋中。我也试过,在海里给我看。
只需将纬度和经度更改到正确的位置,只需注意,缩放以包括标记="true"在我的地图中运行良好,不会导致地图显示海洋中的坐标。
我遇到了这个问题,因为映射初始化发生在绑定到中心的值为[0,0]时。当实际的中心被填充到控制器中时,地图是不可见的,所以它没有重新居中。
我解决这个问题的方法是做一个显式的$scope$当我使地图可见时的摘要
相关文章:
- 如何使用url加载程序在webpack中导入多个图像
- 如何在生成下载文件时显示加载动画
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- 无法在通过jQuery的ajax加载的页面中执行javascript
- Emberjs应用程序加载在除Index之外的所有路由上
- 在chrome.tabs.onCreated之后加载HTML页面
- 单击F5时如何停止页面加载
- HTML5音频加载和播放获胜'我不能在iPad上工作
- 跟踪在页面加载时应用内联样式的JavaScript
- 在使用Polymer'加载所有json文件后执行方法;s的核心ajax
- jQuery Lazy加载动画滚动
- Html页面上的多个Base64图像和平滑加载
- 如何创建带有插槽的vue js组件预加载程序
- Webpack/Rect:遵循egghead.io教程,但出现错误:您可能需要一个合适的加载程序来处理此文件类型
- 如何使该数据在所有元素中加载
- Chrome扩展没有't在重新加载之前考虑期权价值
- 使用javascript在Flash中加载外部图像
- Ajax文件加载和<输入>文件加载
- 在加载了ngmap的地图上显示信息窗口
- AngularJS:NgMap-加载地图中心是'不受尊重