1
这可能更像是一个主观问题,但是对于添加事件侦听器的每个事件类型都有一个专用方法是最佳做法吗?为多个事件类型使用相同的事件侦听器回调是不好的做法吗?
如:
myButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
myButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
//Somewhere else in the code...
private function onMouseOver(e:MouseEvent):void {
this.mouseIsOverButton = true;
}
private function onMouseOut(e:MouseEvent):void {
this.mouseIsOverButton = false;
}
或者,可能一个事件侦听器回调简单地重复使用常见Event
类型?
像这样:
myButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseHandler);
myButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseHandler);
//Somewhere else in the code...
private function onMouseHandler(e:MouseEvent):void {
this.mouseIsOverButton = e.type==MouseEvent.MOUSE_OVER;
}
如果你有一个MouseEvent.MOUSE_UP
,MouseEvent.MOUSE_DOWN
和其他相关MouseEvents
事件侦听器来观看,你甚至可以设置一个switch
语句来处理所有不同类型的MouseEvent
。
我想知道,如果任何有经验的开发人员会反对这种方式跨多个Event
类型共享相同的方法吗?