【发布时间】:2018-03-21 12:06:53
【问题描述】:
我正在编写一个 Angular 4 Web 应用程序,我想根据纬度和经度添加多个标记。
城市的经纬度数组,
cities = [
{lat: 12.972442, longi: 77.580643},
{lat: 12.972234, longi: 77.580233},
{lat: 12.972123, longi: 77.580623}
];
在我的模板中,
<div id="map">
<agm-map [latitude]="latitude" [longitude]="longitude" [scrollwheel]="false" [zoom]="zoom">
<agm-marker [iconUrl]="iconUrl" [latitude]="latitude" [longitude]="longitude"></agm-marker>
</agm-map>
</div>
而在 onInit() 函数中,
public latitude: number;
public longitude: number;
for ( let city of this.cities ) {
this.latitude = city.lat;
this.longitude = city.longi;
}
我认为我错了,但我没有其他想法,请帮助我。 添加与新想法相关的编辑,但地图现在未显示,这是更改, 新增坐标类如下,
export class Coordinate {
latitude: number;
longitude: number;
constructor(lat, lng) {
this.latitude = lat;
this.longitude = lng;
}
}
在 html 中更新,
<agm-map [latitude]="latitude" [longitude]="longitude" (ngModel)="coordinates" [zoom]="zoom">
<agm-marker *ngFor="let marker of coordinates" [iconUrl]="iconUrl" [latitude]="marker.latitude" [longitude]="marker.latitude"></agm-marker>
</agm-map>
ngOnInit() 的变化,
for ( let city of this.cities ) {
const loc = new Coordinate(city.lat, city.longi);
this.coordinates.push(loc);
}
但是,标记没有添加,如果我错了,请纠正我。
【问题讨论】:
标签: angular google-maps angular-google-maps