我想在文本框中获取输入地址的LatLng。我正在使用google map api。通过仅编写新的google.maps.places.Autocomplete({}),我得到无法读取未定义的属性“地方” 。
下面是我的代码:
@ViewChild('addressText') addressText: any;
ngAfterViewInit() {
this.getPlaceAutocomplete();
}
getPlaceAutocomplete() {
const autoComplete = new google.maps.places.Autocomplete(this.addressText.nativeElement, {
types: this.addressText.nativeElement.value
})
// google.maps.event.addListener(autoComplete, 'place_changed', () => {
// const place = autoComplete.getPlace();
// console.log('places... ', place);
// })
}
html文件:
<input matInput placeholder="Locations" class="input" formControlName="text" #addressText>
请帮帮我。
答案 0 :(得分:0)
该错误是由于未创建“自动完成”对象。
HTML:
<input matInput placeholder="Locations" class="input" formControlName="text" id="addressText">
JS:
autocomplete = new google.maps.places.Autocomplete(
document.getElementById('addressText'), {types: ['geocode']});
有关更多详细信息,请浏览文档google api autocomplete