要解决Angular 9和Google地图标记点击事件无法正常工作的问题,你可以按照以下步骤进行操作:
npm install --save @types/googlemaps
///
map: google.maps.Map;
marker: google.maps.Marker;
ngAfterViewInit() {
this.map = new google.maps.Map(document.getElementById('map'), {
center: {lat: -34.397, lng: 150.644},
zoom: 8
});
this.marker = new google.maps.Marker({
position: {lat: -34.397, lng: 150.644},
map: this.map,
title: 'Hello World!'
});
// 添加点击事件
this.marker.addListener('click', () => {
console.log('Marker clicked!');
});
}
确保将地图容器的ID设置为"map",以便与组件类中的代码匹配。
这样就可以在点击Google地图标记时触发事件,并在控制台中打印出"Marker clicked!"。
请注意,这里假设你已经正确加载了Google地图的JavaScript库。如果没有,请确保在index.html文件中添加以下代码:
记得将YOUR_API_KEY替换为你自己的Google地图API密钥。
希望这个解决方法可以帮助你解决问题!
上一篇:Angular 9和Electron中的DataTable:打印不起作用
下一篇:Angular 9和Ivy:Uncaught TypeError:无法读取未定义的属性'id',位置在registerNgModuleType。