这个问题一直困扰着我使用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”]返回的内容并没有帮助。有人知道我该如何工作吗?
最佳答案
我是polymer_elements / polymer_ui_elements的贡献者之一。
这很烦人,但我们也没有解决方案。有一个打开的错误(我明天将添加链接-我现在正在电话上)
最好的办法是不要仅在HTML中导入Dart中的元素,而忽略警告,否则pub build无法正常工作。
关于types - 在Polymer Dart中使用带$的强类型不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21245113/