模拟removeEventListener离子3

时间:2017-08-17 11:53:59

标签: cordova addeventlistener ionic3 inappbrowser

在离子3中,addEventListener代码:browser.removeEventListener('loadstop', callback)无效,模拟是:RealmResults<T>但我如何将此代码ArrayList<T> arrayList = new ArrayList<>(); arrayList.addAll(realmResults); // <-- DON'T DO THIS AT HOME 重新格式化为离子3?

2 个答案:

答案 0 :(得分:1)

我在尝试订阅推送通知事件时遇到了同样的问题,不幸的是在我的情况下unsubscribe()方法无法正常工作。

我找到并且更喜欢的解决方案,特别是当我在一个页面中有多个订阅并且我想在离开页面时取消订阅时,如下所示:

导入RxJs运算符:

import 'rxjs/add/operator/takeWhile';

定义一个变量,比如组件中的liveSubscription: boolean = true;

然后订阅:

browser.on('loadstop')
.takeWhile(() => this.liveSubscription)
.subscribe(() => {})

如果您想取消订阅,只需设置this.liveSubscription = false;

答案 1 :(得分:0)

import { Subscription } from 'rxjs/Subscription';
const subs:Subscription = browser.on('loadstop').subscribe(()=>{})
subs.unsubscribe()