【发布时间】:2016-09-30 13:58:54
【问题描述】:
我正在尝试使用以下代码进行订阅,但它不起作用。
import { Platform } from 'ionic-angular';
@Page({
templateUrl: 'build/pages/test.html',
})
export class Test {
constructor(private platform: Platform) {
this.platform.pause.subscribe(() => {
console.log('paused')
});
}
}
我正在使用 Ionic 2 和 TypeScript,Angular 2。由于 platform.pause 是 Ionic 2 提供的 EventEmitter,我想它应该能够被订阅。但是,当我将应用程序置于后台时,console.log('pause') 不会被触发。
我应该将Platform 添加到提供程序或类似的东西吗?另外,this.platform 不是null。 this.platform.ready().then(()=>{console.log('ready')}) 完美运行。
【问题讨论】:
-
“不起作用”是什么意思?我
paused没有打印? -
@GünterZöchbauer 是的,完全正确。它没有按预期打印出来
-
这里的
this.platform.pause是什么?用更多代码更新您的问题,或者您可以在 plunker 上重现您的问题 -
尝试使用从本博客/教程复制的
document.addEventListener('pause', () => { });webcake.co/listening-for-pause-and-resume-events-in-ionic-2 -
@Will.Harris 是的,我知道。但是我的老板更喜欢使用原生 Ionic 2。在这里(forum.ionicframework.com/t/android-hardware-back-button/41384/3),Ionic 团队说
back button尚未实现。那么这是否意味着this.platform.pause也没有实现?
标签: ionic-framework angular ionic2