当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Dart MirrorsUsed.metaTargets用法及代码示例


dart:mirrors 库中MirrorsUsed.metaTargets 属性的用法介绍如下。

用法:

dynamic
          metaTargets
final

用作元数据时指示反射目标的类列表。另见targets

以下文本是非规范性的:

指定类列表的格式与指定 targets 的格式相同。但是,由于库不能用作 Dart 中的元数据注释,因此将库添加到 metaTargets 的列表中没有任何效果。特别是,将库添加到metaTargets 不会使库的类成为有效的元数据注释以启用反射。

如果 metaTargets 中指定的类的实例用作库、类、字段或方法的元数据注释,则该库、类、字段或方法将添加到反射目标集。

示例用法:

library example;
@MirrorsUsed(metaTargets: "example.Reflectable")
import "dart:mirrors";

class Reflectable {
  const Reflectable();
}

class Foo {
  @Reflectable()
  reflectableMethod() { ... }

  nonReflectableMethod() { ... }
}

在上面的例子中。 reflectableMethod 使用Reflectable 类标记为可反射,而该类又在metaTargets 注释中指定。

nonReflectableMethod 方法缺少元数据注释,因此在运行时无法反映。

相关用法


注:本文由纯净天空筛选整理自dart.dev大神的英文原创作品 metaTargets property。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。