Ionic: нажатие маркера карт Google для нажатия на страницу с помощью NavController приводит к тому, что щелчки на нажатой странице не работают - PullRequest
0 голосов
/ 14 сентября 2018

После успешного отображения нажатой страницы все элементы с привязанным к ним (click) = 'doSomething ()' не работают нигде на нажатой странице.На толкаемой странице также есть элемент ion-slides, при скольжении на новый слайд регистрируются все события щелчка (пробовали в браузере и в приложении android dev).Обновление фрейма решает проблему.Не уверен, что это ошибка или проблема в моем коде.

initMap() {
  let self = this;

  //other code is here to make map, init markers etc. all working fine

  google.maps.event.addListener(marker,'click',()=> {
    self.openPage();
  });
}

Функция openPage:

openPage(){
  this.navCtrl.push(PlacefeedPage);
}

Примечательно: если я вызываю openPage из любого другого места, он работает на 100% нормально

1 Ответ

0 голосов
/ 14 сентября 2018

После поиска немного дольше я нашел решение. Для тех, кто сталкивается с этой проблемой, уловка заключается в использовании NgZone (импортировать его, объявить в конструкторе), после чего вы можете использовать:

self.ngZone.run(()=>{
    self.openPage();
 });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...