Design patterns 动态访问对象方法

Design patterns 动态访问对象方法,design-patterns,dart,getter,dart-mirrors,Design Patterns,Dart,Getter,Dart Mirrors,在Dart中如何做到这一点 还有,这个想法/模式叫什么?动态吸气剂?数据驱动的getter?对象的可变消息/属性?要动态访问Dart中的属性,需要通过镜像系统。 导入“省道:镜像”; ... 打印(人名);//查德 var name=reflect(person).getField(#name).reflectee; 打印(姓名);//查德 var attr=“name”; name=reflect(person).getField(新符号(attr)).reflectee; 打印(姓名);

在Dart中如何做到这一点



还有,这个想法/模式叫什么?动态吸气剂?数据驱动的getter?对象的可变消息/属性?

要动态访问Dart中的属性,需要通过镜像系统。

导入“省道:镜像”;
...
打印(人名);//查德
var name=reflect(person).getField(#name).reflectee;
打印(姓名);//查德
var attr=“name”;
name=reflect(person).getField(新符号(attr)).reflectee;
打印(姓名);//查德

请参见Dart中的

,这是用镜子完成的。一些示例:单击问题下方的“省道镜像”标记可以找到更多信息。
person.name // => "Chad"
var attr = "name";
person.send(attr); // => Ruby style, throws error
person[attr]; // => ECMAScript style, throws error