2017-04-18 14 views
0

wavesurfer.jsを使用しています。再生が終了したら、ポーズボタンを再生ボタンに戻したいのですが、トグルを開くか何も起こらない限り何もしません。Ionic 2 on関数はngModelを正しくリフレッシュしません

this.wavesurfer.on('finish', function() { 
    this.isPlaying = false; 
}.bind(this)); 

私はこの単純なコードを持っているが、私はので、私はそれが正常に呼び出されている知っている、と結合も良いですにconsole.log()を使用しました。しかし、私はページ上で何かをした後でしか変更を見ることができません。

どうすればよいですか? ご協力いただければ幸いです。

+0

'isPlaying'は何ですか?コンポーネント内部のフィールド? – echonax

+0

これは単純なブール変数です。 – Hexiler

+0

どこに定義されていますか? – echonax

答えて

1

それは演奏終了しています後、私はボタンを再生するために戻って一時停止ボタンを変更したいが、私はトグルを開いたり、何も

を起こりません何かをするまで、私はあなたのhtmlでthis.playingを使用していると信じて...

wavesurfer.jsは、角度のゾーン外の値を変更しています。

ngZone APIを使用してみてください:

import {NgZone} from '@angular/core'; 

constructor(private ngZone:NgZone){} 

//... 
this.wavesurfer.on('finish', function() { 
    this.ngZone.run(()=>{ 
    this.isPlaying = false; 
    }); 
}.bind(this)); 

NgZone API

+0

ありがとう。これは最高です。 (ただし、 "... false;})")の後に閉じ括弧を忘れてしまった) – Hexiler

+0

ありがとう.... –

関連する問題