【发布时间】:2019-04-24 17:07:01
【问题描述】:
我需要解决的问题
有没有办法将dart class 的类名作为String 或Type 对象..?
class MyClass {
}
var myClass = MyClass();
我知道property、runtimeType 将对象的类型作为Type 对象返回。但是类有类似的功能吗?
print(myClass.runtimeType.toString());
我目前做的是创建一个类的对象并使用runtimeType。
String type = MyClass().runtimeType.toString();
注意:在python 中,每个类中都有一个名为__name__ 的变量,它可以满足我的需要。
我的意图
我的最终目标是使用以前保存的类名创建飞镖对象。在this issue 中,他们提出了一种使用Maps 的方法。
问题是我有很多类,而且这种方法在我的情况下看起来很乱。
我目前所做的是,通过以下方式保存对象类型:
var saving = myClass.runtimeType.toString();
加载时:
if (saving == MyClass().runtimeType.toString()) {
return MyClass();
}
根据您的经验和意见,您能提出更好的解决方案吗?
【问题讨论】:
-
您的问题的清晰性和细节性获得 A 级。