假设我在Dart中有一个类,它看起来像这样:
class Hello {
final name;
Hello({this.name});
}
我可以使用创建这个类的实例
var x = new Hello(name: "General Kenobi");
在Javascript中,我可以用如下语法检索name属性:
console.log(x["name"]);
有没有办法在Dart中做到这一点?I.e
print(x["name"]);
我看了医生,什么也找不到,希望有人能帮我。非常感谢。
最简单的方法是创建一个方法,将类转换为Map
并重载[]
运算符:
class Hello {
final name;
Hello({this.name});
Map<String, dynamic> toMap() => {'name': name};
operator [](String field) => toMap()[field];
}