作者interboard (影特伯)
看板Flash
标题[问题] 从AMFPHP接收资料的问题 函数传值传址问题?
时间Tue Sep 14 15:02:51 2010
现在写一写不知道怎麽办= =
阵列我写在外面是全域变数
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
1F:推 hpuser:callAFM需要等待回应时间,你必须等amf回应後再读取 09/14 16:49
2F:→ hpuser:pagecounthign[page]的值,不然放在外面自然读不到,因为 09/14 16:50
3F:→ hpuser:amf还没回传值的时候你已经读pagecounthign[page],所以空值 09/14 16:51
其实我程式不只写这些@ @
以程式流程上来说 应该AMF已经回应了才对
还是有方式判断是否已经回应了呢? 囧
※ 编辑: interboard 来自: 140.118.109.214 (09/14 20:18)
4F:→ hpuser:Responder的两个function是唯一能判断是否回应成功的方法吧 09/14 21:02
5F:→ hpuser:有成功跑第一个,失败跑第二个,应该要把callamf之後的流程写 09/14 21:03
6F:→ hpuser:在第一个里面 09/14 21:04
7F:推 MagicYan:可在这只Class里用继承或复合的方式实现EventDispatcher 09/14 21:12
8F:→ MagicYan:在Responder里的二个function里dispatchEvent,这样就可 09/14 21:13
9F:→ MagicYan:不用被程序绑死,这是比较OO的写法,可参阅设计模式里的 09/14 21:14
10F:→ MagicYan:Observer Pattern 09/14 21:14
11F:推 etrexetrex:Observer 只是注册另一个函数 结果还是写在函数里吧? 09/14 21:33
12F:推 MagicYan:回楼上,没错,但这样就可以解决原po要把取到值後的事全 09/14 21:38
13F:→ MagicYan:写在onResultpageH()里头 :D 09/14 21:38
14F:推 etrexetrex:哦 你是说 注册多个函数吧? 09/14 21:45
15F:→ interboard:唔喔 只看懂一半.. 我想我需再研究.. 09/14 21:50
16F:→ interboard:如果能写成监听事件的方式应该可以?? 09/14 21:50
17F:推 MagicYan:回楼上,可以,因为我自己是这样写没问题 09/14 21:53
18F:→ MagicYan:回e大,可以这样说,但Observer的精神在於打破程序导向的 09/14 21:54
19F:→ MagicYan:思考模式,若是用程序导向就会像原po把程式都塞在 09/14 21:55
20F:→ MagicYan:onResultpageH()里 一点点心得,请多指教 09/14 21:55
呃喔 我再研究看看 囧
※ 编辑: interboard 来自: 220.132.170.88 (09/15 00:56)