은 명령지도를위한 새로운 신호 클래스를 만들 필요가 없습니다. 단지 좋은 연습입니다. "dataType"클래스에 type 속성을 부여하면 switch
이됩니다. 하지만 명령에 지저분 할 것입니다. 그러나 명령은 기본적으로 응용 프로그램 전체 작업을 트리거하는 데 사용됩니다.
모든 신호가 응용 프로그램의 광범위한 동작을 유발하지는 않습니다.
예를 들어, 단일 View
이벤트의 힙에 응답하는 경우. 관련 '보기 이벤트'에 대해 Signal
클래스를 만들고 (예 : MyButtonView
의 경우 MyButtonSignal
) 유형 속성을 지정하는 것이 좋습니다.
myButtonSignal.dispatch(MyButtonSignal.CLICK, {name:'exit'});
이 정상적으로 들어
package {
public class MyButtonSignal extends Signal {
public static const CLICK:String = 'myButtonClick';
public static const OVER:String = 'myButtonOver';
public function MyButtonSignal() {
super(String, Object);
}
}
}
파견
과 같이 :
myButtonSignal.add(doMyButtonSignal);
핸들 신호과 같이 :
protected function doMyButtonSignal(type:String, params:Object):void {
switch(type) {
case MyButtonSignal.CLICK: trace('click', params.name);
break;
case MyButtonSignal.OVER: trace('OVER', params.name);
break;
}
}
처럼
광산의 전형적인 신호가 보일 것이다
가끔은 유용 data
자체 데이터 클래스를 변경할 수 있습니다.
그래서 "aws shit, 나는 다른 이벤트에 반응해야한다"는 것을 깨달을 때, 당신은 Signal
에 가서 새로운 static const를 추가하여 이벤트를 나타냅니다. 아마도 Event
개체를 사용할 때 당신 (아마?)과 비슷합니다.