我是google-map的新手。我想创建一个地图,当用户点击任何位置时。它将允许用户在地图上放置标记。
我尝试使用map.addEventListener(“click”),这很好用。 mycode:
function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 12
});
map.addListener('click', function clickHandler() {
//do something
});
}
但是,当用户点击任何地标/ clickableIcon https://imgur.com/a/M3vVu,。
时Google-map将显示信息框并忽略clickHandler,https://imgur.com/a/R3uWL。似乎每个landmark / clickableIcon都有event.stopPropagation();
有没有办法启用这两种方法。也就是当用户点击clickableIcon时,它将显示infoBox并将标记放在地图上。
感谢,
答案 0 :(得分:1)
你可以这样做:
db.contact.aggregate([
{ $sort: { machine_Id: 1, date: 1 } },
{
$group:
{
_id: "$machine_Id",
firstDate: { $first: "$date" }
}
},
{
$project:{
date:{
$split:[
"$firstDate",
"/"
]
}
}
},
{
$project:{
date:{
$concat:[
{
$arrayElemAt:[
"$date",
1
]
},
"/",
{
$arrayElemAt:[
"$date",
0
]
},
"/",
{
$arrayElemAt:[
"$date",
2
]
}
]
}
}
}
] ,function(err, meibanlist) {
if( err || !meibanlist ) console.log("Record not found");
else meibanlist.forEach (function(machine_Id){
console.log(machine_Id);
});
});