是否有一种方式来获得的类名dart class作为一个String或一个Type物体..?
class MyClass {
}
var myClass = MyClass();
Run Code Online (Sandbox Code Playgroud)
我知道property,runtimeType它将返回对象的类型作为Type对象。但是类有类似的功能吗?
print(myClass.runtimeType.toString());
Run Code Online (Sandbox Code Playgroud)
我目前正在做的是创建一个类的对象并使用它runtimeType。
String type = MyClass().runtimeType.toString();
Run Code Online (Sandbox Code Playgroud)
注意:在每个类中都有python一个变量__name__,它可以满足我的需要。
我的最终目标是使用以前保存的类名称创建dart对象。在本期中,他们提出了一种使用Maps 的方法。
问题是我有很多类,在我的情况下该方法看起来很混乱。
我目前要做的是通过以下方式保存对象类型:
var saving = myClass.runtimeType.toString();
Run Code Online (Sandbox Code Playgroud)
并且在加载时:
if (saving == MyClass().runtimeType.toString()) {
return MyClass();
}
Run Code Online (Sandbox Code Playgroud)
根据您的经验和意见,您可以提出更好的解决方案吗?
谢谢!!!
Nae*_*Nae 20
您可以使用:
var runtimeTypeName = (MyClass).toString();
Run Code Online (Sandbox Code Playgroud)
或泛型:
var runtimeTypeName = T.toString();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1353 次 |
| 最近记录: |