我正在尝试使用selector(当命令Object收到事件时过滤事件,但是永远不会被调用!!在这里帮助我的代码片段: Inmy上下文文件:
<MapCommand type="com.pz.events.FolderEvent" selector="folderDelete">
<Command type="com.pz.command.DeleteFolderCommand"/>
</MapCommand>
dipatching事件代码片段:
dispatchEvent(new FolderEvent(FolderEvent.FOLDER_DELETED,targetRoot.selectedItem));
元标记:
[Event(name="folderDelete",type="com.pz.events.FolderEvent")]
[ManagedEvents("folderCreate,folderDelete,folderOpen,folderClose,folderRelocate")]
答案 0 :(得分:2)
问题可能在于配置文件。 type
标记的MapCommand
属性不是消息类型,而是命令类型。对于使用的消息messageType
属性。
所以你的MXML代码应如下所示:
<MapCommand messageType="com.pz.events.FolderEvent" selector="folderDelete">
<Command type="com.pz.command.DeleteFolderCommand"/>
</MapCommand>
或者这个:
<MapCommand type="com.pz.command.DeleteFolderCommand" messageType="com.pz.events.FolderEvent" selector="folderDelete"/>