2017-02-24 11 views
0

私が使用してキャッチすることができ、イベントをスローするサードパーティ製のプラグインを、しました:plugin.onSuperAwesomeEvent(function() { /*do magic once event is fired */})Angular2でサードパーティイベントを観察するにはどうすればよいですか?

今私の問題であり、このイベントがより頻繁に発射することができ、私はこのことを認識する必要があること。私はそれを観測可能にするか、または購読可能にすることができますか?

+0

"イベントをスローする"より具体的な情報を提供してください。どのようなイベントですか? DOMイベント、観測可能、...「第三者」とは何ですか? –

+0

申し訳ありません。それは私が埋め込んでいるスクリプトです。インスタンス化されると、私は 'plugin.load();'を呼び出し、 'plugin.onPluginReady(function(){/ *一度イベントが発生するとマジックを行う* /})'を使用する必要があります。私の問題は、このイベントが一度より多く発生する可能性があり、 'plugin.onPluginReady()'がトリガされるたびに私は気づきたいと思います。 – tschaka1904

+0

同じコードがAngular –

答えて

1

ほとんどのものからオブザーバブルを作成できます。これを試すことができます:

var pluginEventStream = Rx.Observable.create(function(observer) { 
    plugin.onPluginReady(function(evt) { observer.next(evt) }) 
}); 

pluginEventStream.subscribe(function(evt) { 
    // do magic 
}); 
関連する問題