6

すべてのバインディングがフラッシュされ、現在の実行ループが終了するまで、操作を延期したいと思います。それ、どうやったら出来るの?

4

1 に答える 1

7

Ember.run.scheduleメソッドを使用します。

 Ember.run.schedule(queue[, context], callback[, *args]);

ここで、queueは実行ループキュー(例'actions')であり、callback実行する関数です。例えば:

 Ember.run.schedule('actions', function() {
   console.log('I run at the end of the current runloop');
 });

関連して、関数が複数回実行されないようにするには、Ember.run.onceを使用します(これは、と呼ばれることもありますscheduleOnce)。

 Ember.run.once([context,] callback[, *args]);

'actions'これにより、キューでコールバックが実行されます。

(更新されました。修正してくれた@machtyに感謝します!)

于 2013-01-14T20:37:45.497 に答える