【发布时间】:2018-01-01 21:55:32
【问题描述】:
我正在尝试在此帖子Find all subclasses in dart 之后获取给定类的所有子类,如下所示:
import 'dart:mirrors';
class A {}
class B extends A{}
List<Type> getSubclasses(Type type) {
List<Type> subClasses = [];
MirrorSystem mirrorSystem = currentMirrorSystem();
// NoSuchMethodError: Class '_LocalLibraryMirror' has no instance getter 'classes'. ???
mirrorSystem.isolate.rootLibrary.classes.forEach((s, c) {
if (c.superclass == type) {
subClasses.add(c);
}
});
return subClasses;
}
main() {
var result = getSubclasses(A);
print(result);
}
但我收到以下错误:
Unhandled exception:
NoSuchMethodError: Class '_LocalLibraryMirror' has no instance getter 'classes'.
Receiver: Instance of '_LocalLibraryMirror'
Tried calling: classes
飞镖团队可能从LibraryMirror 中删除了classes,有人知道任何替代方案吗?
我使用的是 dart 版本:1.24.3
【问题讨论】:
标签: server dart dart-mirrors