Google maps 谷歌地图API-在数据层向点添加任意数据

Google maps 谷歌地图API-在数据层向点添加任意数据,google-maps,google-maps-api-3,Google Maps,Google Maps Api 3,我正在建造一个学校层。我通过向数据层添加点来实现这一点。我很容易就添加了这些要点。我的问题是,如何向该点添加任意数据,例如学校名称 我试着做schoolLayer.add({geometry:school,school\u name:'Hello小学'}),但它不起作用 将任意数据放入功能的属性字段中 var schoolLayer = new google.maps.Data(); schoolLayer.setMap(map); let latLng = new google.maps.La

我正在建造一个学校层。我通过向数据层添加点来实现这一点。我很容易就添加了这些要点。我的问题是,如何向该点添加任意数据,例如学校名称


我试着做
schoolLayer.add({geometry:school,school\u name:'Hello小学'})
,但它不起作用

将任意数据放入功能的属性字段中

var schoolLayer = new google.maps.Data();
schoolLayer.setMap(map);
let latLng = new google.maps.LatLng(coords1, coords2);
let school = new google.maps.Data.Point(latLng);
schoolLayer.add({geometry: school});
然后您可以在事件侦听器中获得它,如下所示:

let latLng = new google.maps.LatLng(37.4419, -122.1419);
let school = new google.maps.Data.Point(latLng);
schoolLayer.add({
  geometry: school,
  properties: {
    name: "school1"
  }
});

函数初始化(){
var map=new google.maps.map(
document.getElementById(“地图画布”){
中心:新google.maps.LatLng(37.4419,-122.1419),
缩放:13,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
var infowindow=new google.maps.infowindow();
var schoolLayer=new google.maps.Data();
设置地图(地图);
让latLng=newgoogle.maps.latLng(37.4419,-122.1419);
let school=new google.maps.Data.Point(latLng);
schoolLayer.add({
几何:学校,
特性:{
名称:“学校1”
}
});
让latLng2=newgoogle.maps.LatLng(37.445,-122.145);
let school2=新的google.maps.Data.Point(latLng2);
schoolLayer.add({
几何:学校2,
特性:{
名称:“学校2”
}
});
google.maps.event.addListener(学校层,'click',函数(e){
infowindow.setContent(e.feature.getProperty(“名称”);
infowindow.setOptions({
pixelOffset:new google.maps.Size(0,-40)
})
信息窗口。设置位置(如板条);
打开(地图);
})
}
google.maps.event.addDomListener(窗口“加载”,初始化)
html,
身体
#地图画布{
身高:100%;
宽度:100%;
边际:0px;
填充:0px
}

google.maps.event.addListener(schoolLayer, 'click', function(e) {
  infowindow.setContent(e.feature.getProperty("name"));
  infowindow.setOptions({
    pixelOffset: new google.maps.Size(0, -40)
  })
  infowindow.setPosition(e.latLng);
  infowindow.open(map);
})