Member 13744702 Ответов: 0

Каково решение erro, которое (не может прочитать свойство 'innerhtml' undefined ) при реализации Google maps


когда я внедрял в свой проект ionic 3 я включил в него google maps после того как установил все шаги необходимые для правильного использования карт в ionic 3

(страница : google maps с поиском в строке поиска)

мой машинописный код для отображения таков :

импорт { Component, ElementRef, ViewChild, NgZone } из '@angular/core';
импорт { IonicPage, NavController, NavParams, Platform, ViewController } из 'ionic-angular';
импорт { Geolocation } из '@ionic-native/geolocation';
импорт { GoogleMapsProvider } от '../../поставщикам/Google-карты и Google-Карты;


объявить var google ;
@IonicPage()
@Компонент({
селектор: 'страница-map2',
templateUrl: 'map2.html',
})
экспорт класса Map2Page {
@ViewChild('map') mapElement: ElementRef;
@ViewChild('pleaseConnect') pleaseConnect: ElementRef;

широта: число;
долгота: число;
autocompleteService: любой;
placesService: любой;
запрос: string = ";
места: любые = [];
searchDisabled: логическое значение;
saveDisabled: логическое значение;
расположение: любое;

конструктор(публичных navCtrl: NavController, общественные зоны: NgZone, общественные карты: GoogleMapsProvider, публичные платформы: Платформа, общественных геолокации: геолокация, общественных viewCtrl: файл ViewController) {
это.searchDisabled = истина;
это.saveDisabled = истина;

}

ionViewDidLoad(): void {
пусть mapLoaded = this.maps.init(this.mapElement.nativeElement, this.pleaseConnect.nativeElement).then(() => {

this.autocompleteService = новый google.maps.places.AutocompleteService();
this.placesService = новый google.maps.places.PlacesService(this.maps.map);
это.searchDisabled = ложь;

});
}

selectPlace(место){

это.где = [];

пусть расположение = {
широта: нуль,
lng: null,
название: место.название
};

this.placesService.getDetails({placeId: place.place_id}, (details) => {

this.zone.run(() => {

местоположение.имя = details.name;
расположение.широта = детали.геометрия.расположение.широта();
расположение.СПГ = детали.геометрия.расположение.СПГ();
это.saveDisabled = ложь;

это.карты.карте.setCenter({широта: расположение.широта, СПГ: расположение.СПГ});

this.location = местоположение;

});

});

}

ѕеагсһместо(){

это.saveDisabled = истина;

если(это.запрос.длина и gt; 0 &&усилителя; !это.searchDisabled) {

давайте конфиг = {
типы: ['геокод'],
вход: это.запрос
}

this.autocompleteService.getPlacePredictions(config, (predictions, status) => {

если(состояние == в гугле.карты.места.PlacesServiceStatus.ОК && прогнозы){

это.где = [];

прогнозы.forEach((прогнозирование) => {
this.places.push(предсказание);
});
}

});

} еще {
это.где = [];
}

}

сохранить(){
это.viewCtrl.в отставку(при этом.расположение);
}

закрывать(){
это.viewCtrl.уволить();
}

}
и мой html код для этой страницы таков :

<ионный коллектор>
<ion-navbar color="primary">
<ion-кнопки слева>
Отменить

<ion-кнопки справа>
&ЛТ;кнопка [отключен]="saveDisabled" Ион-кнопка (клик)="сохранить ()"и GT;сохранить



<ion-панель инструментов>
<ion-searchbar [(ngModel)]="query" (ionInput)="searchPlace()">


<ion-list>
&ЛТ;Ион-пункт *ngFor="давайте места места" (как touchstart)="selectPlace(место)"и GT;{{Место.описание}}




<ионное содержание>


Пожалуйста, подключитесь к интернету...





<ion-spinner>



моя проблема в том, что когда я иду тестировать код и просматривать результаты, он выдает мне ошибку, которая является :

Ошибка Error: Uncaught (in promise): TypeError: не удается прочитать свойство 'innerHTML' undefined
TypeError: не удается прочитать свойство 'innerHTML' undefined
в Object._.QA (util.js:19)
в L$.attributionText_changed (places_impl.ДШ:40)
at Rc (js?key=AIzaSyCfydQz_KdwPVD98a8jMWG3DxB_h-EvJ8U&libraries=places:50)
at l$._.J.bindTo (js?key=AIzaSyCfydQz_KdwPVD98a8jMWG3DxB_h-EvJ8U&libraries=places:118)
at Object.m$.f (places_impl.js:40)
в МК.&ЛТ;анонимный&ГТ; (в JS?ключ=AIzaSyCfydQz_KdwPVD98a8jMWG3DxB_h-EvJ8U&амп;библиотеки=места:146)
at Object._.Q (js?key=AIzaSyCfydQz_KdwPVD98a8jMWG3DxB_h-EvJ8U&libraries=places:62)
в new yw (js?key=AIzaSyCfydQz_KdwPVD98a8jMWG3DxB_h-EvJ8U&libraries=places:146)
на map2.ts:37
at t.invoke (polyfills.js:3)
в Object._.QA (util.js:19)
в L$.attributionText_changed (places_impl.ДШ:40)
at Rc (js?key=AIzaSyCfydQz_KdwPVD98a8jMWG3DxB_h-EvJ8U&libraries=places:50)
at l$._.J.bindTo (js?key=AIzaSyCfydQz_KdwPVD98a8jMWG3DxB_h-EvJ8U&libraries=places:118)
at Object.m$.f (places_impl.js:40)
в МК.&ЛТ;анонимный&ГТ; (в JS?ключ=AIzaSyCfydQz_KdwPVD98a8jMWG3DxB_h-EvJ8U&амп;библиотеки=места:146)
at Object._.Q (js?key=AIzaSyCfydQz_KdwPVD98a8jMWG3DxB_h-EvJ8U&libraries=places:62)
в new yw (js?key=AIzaSyCfydQz_KdwPVD98a8jMWG3DxB_h-EvJ8U&libraries=places:146)
на map2.ts:37
at t.invoke (polyfills.js:3)
в C (полифиллы.ДС:3)
в polyfills.js:3
at t.invokeTask (polyfills.js:3)
at Object.onInvokeTask (core.js:4620)
at t.invokeTask (polyfills.js:3)
в r.runTask (polyfills.js:3)
at o (polyfills.js:3)
at <anonymous>
строка 37 в коде ts которая выглядит как его причина ошибки это эта строка :

this.placesService = новый google.maps.places.PlacesService(this.maps.map);
Я искал эту ошибку , но не могу найти решение, особенно это происходит в коде для реализации google maps

каково же решение этой ошибки , пожалуйста

и есть еще один вопрос вокруг темы google maps .. Есть ли способ получить информацию о местах из google maps и показать ее в проекте на специальном оповещении, тосте, модале или что-то в этом роде ? (средняя точка это, чтобы получить данные в проект из google maps)

Вообще спасибо

Что я уже пробовал:

Я ничего не пробую до сих пор , я прошу помощи для моего дипломного проекта

Patrice T

Где находится позиция ошибки в этом коде ?

Member 13744702

в этой строке bro => this.placesService = new google.maps.places.PlacesService(this.maps.map);

Richard MacCutchan

Ошибка совершенно очевидна; вы пытаетесь получить доступ к свойству объекта, который не существует. Посмотрите на строки кода перед ошибкой, чтобы понять, почему ссылка недействительна.

Member 13744702

Я понимаю , но не могли бы вы предложить мне решение :/ что мне делать, братан ?

Richard MacCutchan

Вы должны выяснить, какой именно элемент равен нулю, и почему.

0 Ответов