【发布时间】:2013-12-09 18:33:38
【问题描述】:
我想在 Dart 中实现一个观察者模式,但我不知道如何去做。
假设我有一堂课:
class MyClass {
String observed_field;
}
现在,每当我更改字段时,我想将“observed_field changed”字符串打印到控制台中。使用自定义设置器非常简单:
class MyClass {
String _observed_field;
get observed_field => _observed_field;
set observed_field(v) {
_observed_field = v;
print("observed_field changed");
}
}
当然,如果我没有一个,但有很多这样的字段,我就不想创建所有这些 getter 和 setter。显而易见的理论解决方案是将它们动态添加到类中,如下所示(不是工作代码,只是我希望它看起来如何的示例):
class MyClass
String _observeable_field;
String _observeable_field_2;
observe(#observeable_field, #observeable_field_2);
end
有可能吗?此外,如果不在observe() 调用之上定义这些字段,而是编写如下内容,那就太棒了:
observe(String: #_observeable_field, String: #_observeable_field_2);
以便自动声明这些字段。
【问题讨论】:
标签: dart