在Polymer Dart中使用$的强类型不起作用

时间:2014-01-20 22:04:19

标签: types casting dart dart-polymer

使用Polymer和Dart,这是一个不断出现的问题。

当使用polymer_elements项目中的元素时,我发现无法在Dart编辑器中引出警告而无法访问这些元素的属性或方法。代码运行,但是一旦有很多警告,警告会很烦人。

$["header-collapse"].toggle();   // creates a warning (Element does not have method "toggle")

在上面的行中,ID为“header-collapse”的元素是polymer_elements包中的PolymerCollapse元素。但是,如果我导入适当的Dart文件并尝试对其进行类型转换,我会得到例外。所以这不起作用:

PolymerCollapse headerCollapse = $["header-collapse"];   // does not work!

到目前为止,设置断点并检查$ [“header-collapse”]返回的内容并没有帮助。任何人都知道如何让这个工作?

1 个答案:

答案 0 :(得分:0)

我是polymer_elements / polymer_ui_elements的贡献者之一。

这非常烦人,但我们也没有解决方案。有一个开放的bug(我明天会添加链接 - 我现在正在打电话)

您可以做的最好的事情是不要在Dart中导入元素,只在HTML中导入并忽略警告,否则pub build将无效。