[問題] AS3 連續的呼叫一串callback functions

看板Flash作者 ( )時間16年前 (2009/05/05 19:20), 編輯推噓3(3011)
留言14則, 3人參與, 最新討論串1/1
在as3或是其他gui programming裡 都會有event listener 的設計 就是某件事發生後 會執行一個callback function 我的問題是 我今天想要作 N 件事 這 N 件事 分別都需要給它一個callback function 但我想要 "等" 這 N 件事全都做完... 目前我的方法是是讓他們透過callback function 去一個叫一個 /* *************************************************** */ var onDone_N = function() { /* 現在 N 件事都作完了 */ }; ... = function(callback) { /* doThing_N(onDone_N) }; ... var onDone_2 = function() { /* doThing_3(onDone_3) }; var onDone_1 = function() { /* doThing_2(onDone_2); }; // 開始執行第一件事 doThing_1( onDone_1 ); /* 做第1件事, 完成後會呼叫 callback function onDone_1 */ /* *************************************************** */ 不知道有什麼其他好方法 這樣寫起來有點痛苦 -- ※ 編輯: easy1 來自: 85.180.8.101 (05/05 19:31)

05/06 00:06, , 1F
5899 不知道幫不幫的上忙?
05/06 00:06, 1F

05/06 00:08, , 2F
可以描述一下是在怎樣的情況下有這種需求嗎?
05/06 00:08, 2F

05/06 00:08, , 3F
了解造成此種需求的原因,或許可以得到其他解答:)
05/06 00:08, 3F

05/06 00:35, , 4F
想要一次call很多個URLLoader.load(...) 然後蒐集所有結果
05/06 00:35, 4F

05/06 00:40, , 5F
用 FSM? hmm....
05/06 00:40, 5F

05/06 00:47, , 6F
你可以參考看看BulkLoader
05/06 00:47, 6F

05/06 00:47, , 7F

05/06 00:48, , 8F
專門用來一次載入一堆資料,然後最後丟個complete事件
05/06 00:48, 8F

05/06 00:48, , 9F
image, XML, sound, binary檔案格式都幫你考慮到了
05/06 00:48, 9F

05/06 00:49, , 10F
如果不要用API,那就用一個單一listener監聽所有資料載
05/06 00:49, 10F

05/06 00:49, , 11F
入的complete事件,每完成一個就讓一個變數+1,當答到預
05/06 00:49, 11F

05/06 00:50, , 12F
定數量,則進入結束function
05/06 00:50, 12F

05/06 02:26, , 13F
感謝實用資訊!!
05/06 02:26, 13F

05/06 02:40, , 14F
CJ大是吧 :-p
05/06 02:40, 14F
文章代碼(AID): #1A023rqX (Flash)