1

私は Angularjs が初めてで、soundManager ライブラリを使用して単純なプレーヤーを作成しようとしています。

私が直面している問題は、サウンドの読み込み/再生中に DOM を更新することです。

soundManagerオブジェクトはorSoundのようないくつかの動的プロパティを公開しており、それらを DOM にバインドする方法を見つけようとしています。bytesLoadedposition

私は次のようなもので試しました

<span ng-bind="sound.bytesLoaded"></span>

wheresoundは root にアタッチされたサウンド オブジェクトのインスタンスですが、$scopeこのように DOM が 1 回だけ更新されているようです。

4

1 に答える 1

2

sound.bytesLoaded問題は、ロードされたバイトのコールバック関数、または角度のない世界である同様のコールバックメソッドのような非角度の世界で更新される可能性があります。

非角度世界でモデル値を更新しながらビューを更新するに$scope.$applyは、SM2 のコールバック メソッド内からメソッドを呼び出す必要がある場合があります。

擬似コード:

sound.on('bytesLoaded', function(bytesLoaded){
  // Imagine you have some similar kind of the callback in SM2,
  // where you will be updating the sound.bytestLoaded property.
  sound.bytesLoaded = bytesLoaded;
  $scope.$apply(); // please make sure you call have this line
                   // where you are updating the bytesLoaded property. 

})
于 2013-03-18T05:24:21.787 に答える