Mat*_*jak 3 google-maps google-maps-api-3 angularjs angular-google-maps angular
我正在使用有角度的谷歌地图 (AGM) 来查找地址。现在我希望当一个人选择并解决它时,它会填充输入。在哪里可以找到单个地址元素名称,例如 street、str。号码,邮政编码等将数据绑定到输入字段?
我们可以使用google maps api找到一些详细信息,按照步骤操作。
第 1 步:导入MapsAPILoader到您的组件中。
import { MapsAPILoader } from '@agm/core';
@ViewChild('search') searchElementRef: ElementRef;
Run Code Online (Sandbox Code Playgroud)
第 2 步:实现findAdress() 方法并在您的ngAfterViewInit()方法中调用它。
findAdress(){
this.mapsAPILoader.load().then(() => {
let autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement);
autocomplete.addListener("place_changed", () => {
this.ngZone.run(() => {
// some details
let place: google.maps.places.PlaceResult = autocomplete.getPlace();
this.address = place.formatted_address;
this.web_site = place.website;
this.name = place.name;
this.zip_code = place.address_components[place.address_components.length - 1].long_name;
//set latitude, longitude and zoom
this.latitude = place.geometry.location.lat();
this.longitude = place.geometry.location.lng();
this.zoom = 12;
});
});
});
}
Run Code Online (Sandbox Code Playgroud)
第 3 步:在您的 html 文件中进行一些更改。
<input #search autocorrect="off" autocapitalize="off" spellcheck="off" type="text" class="form-control">
Run Code Online (Sandbox Code Playgroud)
第 4 步:不要忘记在您的AgmCoreModule配置中添加地点库。
import { AgmCoreModule } from '@agm/core';
imports: [
AgmCoreModule.forRoot({
apiKey: 'your_key',
libraries: ["places"]
})
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12085 次 |
| 最近记录: |