看板 Flash 關於我們 聯絡資訊
現在寫一寫不知道怎麼辦= = 陣列我寫在外面是全域變數 AMFPHP應該沒問題 成功後把資料傳送到 var responderpageH = new Responder(onResultpageH, onFaultpageH); function onResultpageH(ResultpageH:String):void { pagecounthigh[page]=ResultpageH; //我在這裡抓的到我的 pagecounthigh[page] } //我在外面這裡就抓不到 pagecounthigh[page]了 變成空值 結果這樣資料抓出來我沒辦法用 總不能都在函數裡面寫吧 Orz 有人有用過能分享一下問題嗎 謝囉 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.118.109.202
hpuser:callAFM需要等待回應時間,你必須等amf回應後再讀取 09/14 16:49
hpuser:pagecounthign[page]的值,不然放在外面自然讀不到,因為 09/14 16:50
hpuser:amf還沒回傳值的時候你已經讀pagecounthign[page],所以空值 09/14 16:51
其實我程式不只寫這些@ @ 以程式流程上來說 應該AMF已經回應了才對 還是有方式判斷是否已經回應了呢? 囧 ※ 編輯: interboard 來自: 140.118.109.214 (09/14 20:18)
hpuser:Responder的兩個function是唯一能判斷是否回應成功的方法吧 09/14 21:02
hpuser:有成功跑第一個,失敗跑第二個,應該要把callamf之後的流程寫 09/14 21:03
hpuser:在第一個裡面 09/14 21:04
MagicYan:可在這隻Class裡用繼承或複合的方式實現EventDispatcher 09/14 21:12
MagicYan:在Responder裡的二個function裡dispatchEvent,這樣就可 09/14 21:13
MagicYan:不用被程序綁死,這是比較OO的寫法,可參閱設計模式裡的 09/14 21:14
MagicYan:Observer Pattern 09/14 21:14
etrexetrex:Observer 只是註冊另一個函數 結果還是寫在函數裡吧? 09/14 21:33
MagicYan:回樓上,沒錯,但這樣就可以解決原po要把取到值後的事全 09/14 21:38
MagicYan:寫在onResultpageH()裡頭 :D 09/14 21:38
etrexetrex:哦 你是說 註冊多個函數吧? 09/14 21:45
interboard:唔喔 只看懂一半.. 我想我需再研究.. 09/14 21:50
interboard:如果能寫成監聽事件的方式應該可以?? 09/14 21:50
MagicYan:回樓上,可以,因為我自己是這樣寫沒問題 09/14 21:53
MagicYan:回e大,可以這樣說,但Observer的精神在於打破程序導向的 09/14 21:54
MagicYan:思考模式,若是用程序導向就會像原po把程式都塞在 09/14 21:55
MagicYan:onResultpageH()裡 一點點心得,請多指教 09/14 21:55
呃喔 我再研究看看 囧 ※ 編輯: interboard 來自: 220.132.170.88 (09/15 00:56)