2009-12-07 2 views
1

Мне нужно передать переменный в диспетчерской тега ... напримерMate грузоотправителя тег

var google:EventName = new EventName(EventName.ADD_User,user); 
dispatchEvent(google); 

Теперь, когда я иду Mate диспетчерского тега ... Как я могу передать пользователь значения.

<mate:Dispatcher id="myDispatcher" generator="{EventName}" 
type="{EventName.ADD_User}"> 
         <mate:eventProperties> 
             <mate:EventProperties 
                  myProperty="myValue" 
                  myProperty2="100" /> 
         </mate:eventProperties> 
    </mate:Dispatcher> 

Теперь, как я могу передать пользователя в теге диспетчера помощника.

ответ

1

Вам необходимо объявить пользователя как свойство вашего класса GoogleEvent.as. Для GoogleEvent.as:

package 
{ 
    public class GoogleEvent extends Event 
    { 
    public static const ADD_User:String = "GoogleEvent_AddUser"; 

    public var user:String; 

    public function GoogleEvent(type:String, bubbles:Boolean=true, cancelable:Boolean=false) 
    { 
     super(type, bubbles, cancelable); 
    } 
    } 
} 

И в вашем объявлении события:

var google:GoogleEvent= new GoogleEvent(GoogleEvent.ADD_User); 

google.user = "My User's Name"; 
dispatchEvent(google); 

Затем, чтобы получить значение пользователя от вашего события в вашей карте событий:

<EventHandlers type="{ GoogleEvent.ADD_User }"> 
    <MethodInvoker generator="{ MyTargetPresentaionModel }" method="DoSomething" arguments="{ [event.user] }" /> 
</EventHandlers> 

Позвольте мне знать, если у вас есть вопросы. Надеюсь, это поможет!

+0

Я - голова, но все равно спасибо за ответ. – Kevin