Javascript AngularJS+;谷歌地图(多个标记)
我做了一个简单的AngularJS谷歌地图集成,有多个标记,但我得到的只是一个控制台中没有错误的“灰色/棕色屏幕”,之前从控制台中清除了一些代码,但仍然没有运气 我认为这与标记无关,我的想法是可能是谷歌地图导致了这个问题 任何帮助都会很好,我在下面添加了一个代码预览:Javascript AngularJS+;谷歌地图(多个标记),javascript,angularjs,google-maps,Javascript,Angularjs,Google Maps,我做了一个简单的AngularJS谷歌地图集成,有多个标记,但我得到的只是一个控制台中没有错误的“灰色/棕色屏幕”,之前从控制台中清除了一些代码,但仍然没有运气 我认为这与标记无关,我的想法是可能是谷歌地图导致了这个问题 任何帮助都会很好,我在下面添加了一个代码预览: var myApp=angular.module(“myApp”,[]); 指令(“myMaps”,function()){ 返回{ 限制:'E', 模板:“”, 替换:正确, 链接:函数(范围、元素、属性){ 变量映射选项={
var myApp=angular.module(“myApp”,[]);
指令(“myMaps”,function()){
返回{
限制:'E',
模板:“”,
替换:正确,
链接:函数(范围、元素、属性){
变量映射选项={
缩放:10,
mapTypeId:google.maps.mapTypeId.SATELLITE
};
var城市=[{
拉脱维亚:52.238983,
液化天然气:-0.888509
},
{
拉脱维亚:52.238168,
液化天然气:-52.238168
},
{
拉脱维亚:52.242452,
液化天然气:-0.889882
},
{
纬度:52.247234,
液化天然气:-0.893567
},
{
拉脱维亚:52.241874,
液化天然气:-0.883568
}
];
var map=new google.maps.map(document.getElementById(attrs.id),mapOptions);
城市。forEach(函数(值、索引){
var mylatng=new google.maps.LatLng(value.lat,value.lng);
var marker=new google.maps.marker({
职位:myLatLng,
地图:地图,
标题:“我的城市”
});
marker.setMap(map);
});
}
};
});代码>
Angular.JS和谷歌地图
#地图{
高度:700px;
宽度:100%;
}
还需要指定地图中心,可以设置为:
- 明确通过
- 地图可以通过自动居中来显示视口中的标记(在这种情况下,无需指定
zoom
和center
属性)
如何自动将地图居中
根据提供的示例,地图可以如下所示居中:
var bounds = new google.maps.LatLngBounds();
cities.forEach(function (value, index) {
var myLatLng = new google.maps.LatLng(value.lat, value.lng);
bounds.extend(myLatLng);
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
title: "My Town"
});
});
map.fitBounds(bounds);
下面是一个修改后的示例:
var myApp=angular.module(“myApp”,[]);
指令(“myMaps”,函数(){
返回{
限制:'E',
模板:“”,
替换:正确,
链接:函数(范围、元素、属性){
变量映射选项={
//缩放:10,
mapTypeId:google.maps.mapTypeId.SATELLITE
};
var城市=[{
拉脱维亚:52.238983,
液化天然气:-0.888509
},
{
拉脱维亚:52.238168,
液化天然气:-52.238168
},
{
拉脱维亚:52.242452,
液化天然气:-0.889882
},
{
纬度:52.247234,
液化天然气:-0.893567
},
{
拉脱维亚:52.241874,
液化天然气:-0.883568
}
];
var map=new google.maps.map(document.getElementById(attrs.id),mapOptions);
var bounds=new google.maps.LatLngBounds();
城市。forEach(函数(值、索引){
var mylatng=new google.maps.LatLng(value.lat,value.lng);
扩展(myLatLng);
var marker=new google.maps.marker({
职位:myLatLng,
地图:地图,
标题:“我的城市”
});
//marker.setMap(map);
});
映射边界(bounds);
}
};
});代码>
#地图{
高度:700px;
宽度:100%;
}
还需要指定地图中心,可以设置为:
- 明确通过
- 地图可以通过自动居中来显示视口中的标记(在这种情况下,无需指定
zoom
和center
属性)
如何自动将地图居中
根据提供的示例,地图可以如下所示居中:
var bounds = new google.maps.LatLngBounds();
cities.forEach(function (value, index) {
var myLatLng = new google.maps.LatLng(value.lat, value.lng);
bounds.extend(myLatLng);
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
title: "My Town"
});
});
map.fitBounds(bounds);
下面是一个修改后的示例:
var myApp=angular.module(“myApp”,[]);
指令(“myMaps”,函数(){
返回{
限制:'E',
模板:“”,
替换:正确,
链接:函数(范围、元素、属性){
变量映射选项={
//缩放:10,
mapTypeId:google.maps.mapTypeId.SATELLITE
};
var城市=[{
拉脱维亚:52.238983,
液化天然气:-0.888509
},
{
拉脱维亚:52.238168,
液化天然气:-52.238168
},
{
拉脱维亚:52.242452,
液化天然气:-0.889882
},
{
纬度:52.247234,
液化天然气:-0.893567
},
{
拉脱维亚:52.241874,
液化天然气:-0.883568
}
];
var map=new google.maps.map(document.getElementById(attrs.id),mapOptions);
var bounds=new google.maps.LatLngBounds();
城市。forEach(函数(值、索引){
var mylatng=new google.maps.LatLng(value.lat,value.lng);
扩展(myLatLng);
var marker=new google.maps.marker({
职位:myLatLng,
地图:地图,
标题:“我的城市”
});
//marker.setMap(map);
});
映射边界(bounds);
}
};
});代码>
#地图{
高度:700px;
宽度:100%;
}
没人能帮上忙吗?我真的很感激发生了什么?没人能帮忙吗?我真的很感激发生了什么?太好了!谢谢你的帮助,太好了!谢谢你的帮助。