Привет, я боролся с импортом библиотеки JS карт Google. Я установил библиотеку @ google / maps с помощью npm, но не могу импортировать ссылку на эту библиотеку в файл компонента.
Я перепробовал все, что упомянуто в этом вопросе: @ types / googlemaps / index.d.ts 'не является модулем
но все же я не могу использовать карты Google в своем компоненте.
Вот что я делаю в своем коде:
/// <reference types = "@types/googlemaps" />
import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';
import { Router } from '@angular/router';
import {} from '@google/maps';
@Component({
selector: 'app-main-search',
templateUrl: './main-search.component.html',
styleUrls: ['./main-search.component.scss']
})
export class MainSearchComponent implements OnInit {
@ViewChild('city', { read: ElementRef }) searchCityInput:ElementRef;
listOfOption = ['Java Developer', 'Java Team Lead', 'Java Architect', 'Java Programmer', 'Senior Java Developer'];
listOfSelectedValue = [ ];
recent_active = false;
constructor(private router: Router) { }
ngOnInit(): void {
const autocomplete = new google.maps.places.Autocomplete(this.searchCityInput.nativeElement);
console.info("Input: ", autocomplete);
//Event listener to monitor place changes in the input
google.maps.event.addListener(autocomplete, 'place_changed', () => {
//Emit the new address object for the updated place
// this.onSelect.emit(this.getFormattedAddress(autocomplete.getPlace()));
console.info("Formated Address: ", autocomplete.getPlace());
});
}
onSubmit() {
this.router.navigateByUrl('/search/results');
}
}
Я получаю эту ошибку:
ERROR TypeError: Cannot read property 'Autocomplete' of undefined
@ enf0rcer Большое спасибо. Это была глупая ошибка с моей стороны. Я не включил библиотеку мест в index.html
Рад, что помог!





Как говорится в комментарии, Пиюшу пришлось включить в свой проект библиотеку мест.
Думаю, вы не загрузили api мест. Как ошибка пытается сказать вам, места не определены.