AS3 / Flex中的自定义元数据?

时间:2011-04-20 11:09:03

标签: flash flex actionscript-3 actionscript metadata

如何在ActionScript3 / Flex中创建和使用自定义元数据?

2 个答案:

答案 0 :(得分:19)

在Flex中处理ActionScript中的元数据有两个一般方向:

  1. 使用反射(或根据Adobe进行内省)在运行时进行处理。您可以找到文档here。有几个第三方库提供了更方便的反射API,例如as3-commons-reflectreflection API in Parsley
  2. 使用自Flex 4 SDK修订版8165以来引入的Flex Compiler Extensions(请参阅details)。另请参阅the corresponding discussionofficial documentation

答案 1 :(得分:14)

要创建元数据,只需在类定义中使用方括号语法:

[ClassAttr]
public class ClassWithMetadata {
    [AttributeNoArgs]
    public var data:Object;

    [AttributeWithArgs(arg="value)]
    public var prop:Object;
}

致电describeType(ClassWithMetadata)获取您班级的xml说明。元数据将存在,您可以根据自己的喜好对其进行解析和处理 要防止编译器剥离元数据,请为您使用的每个属性名称添加编译器参数-keep-as3-metadata Attribute。这可以在库设置中或使用元数据的每个项目中完成。