是否可以在运行时获取Dart中的变量类型,而不将其分配给对象的实例并且不使用镜像?
我知道我可以在没有镜子的情况下做到这一点(这很棒!):
Foo foo;
foo = new Foo();
var fooType = foo.runTimeType; // This will give me a type of "Foo"
但我想知道变量在分配给对象之前的类型:
Foo foo;
var fooType = foo.runTimeType; // This will not give me a type of "Foo"
我猜这是不可能的,因为输入信息在运行时丢失了但是想确认它。
(我的实际情况是我正在使用自定义事件将依赖注入到Polymer Element中。我想尽可能多地将这些代码放在一个元素基类中,并在每个派生中尽可能少地编写代码我需要做的一件事就是知道要注入的变量的类型。