成功显示推入页面后,绑定了(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%正常运行
最佳答案
在寻找了更长的时间后,我找到了解决方案。对于遇到此问题的任何人,诀窍是使用NgZone(将其导入,在构造函数中声明),然后可以使用:
self.ngZone.run(()=>{
self.openPage();
});