我是动作脚本的新手,并试图理解现有代码。这里我有 MyRestServiceEvent 和 MyRestService。MyRestService 类中定义了许多方法,它们调度许多事件,但有些实现dispatchEvent(evt.clone());
我无法理解。我知道 MyRestServiceEvent 已经实现了 clone(),那么这是做什么的dispatchEvent(evt.clone());
呢?如果有人可以向我解释这个过程,我真的很感激。
下面是这两个类的一个小快照。
事件类
public function MyRestServiceEvent(type:String, request:MyRestRequest, result:* = null, bubbles:Boolean=false, cancelable:Boolean=false)
{
super(type, bubbles, cancelable);
this.result = result;
this.request = request;
}
/**
* Override clone to support re-dispatching
*/
override public function clone():Event
{
return new MyRestServiceEvent(type, this.request, this.result, bubbles, cancelable);
}
}
}
事件调度程序类
public class MyRestService extends EventDispatcher
{
// ton of methods here but below is an example of one of the functions
private function checkAdminErrorHandler(evt:MyRestServiceEvent):void
{
dispatchEvent(evt.clone());
}
}