我试图在这篇文章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
飞镖队可能从qazxsw poi中移除了qazxsw poi,有人知道其他选择吗?
我正在使用飞镖版:1.24.3
按照Randal的建议,我可以使用以下代码修复我的问题:
classes
希望这可以帮助某人