Dart 异常:NoSuchMethodError:未找到方法:';当聚合物出现时';

Dart 异常:NoSuchMethodError:未找到方法:';当聚合物出现时';,dart,dart-polymer,Dart,Dart Polymer,我使用的是Dart SDK 1.5.3 | polymer 0.11.0+5 | Windows x64。当我使用模板“使用聚合物库(移动友好型)选项的示例web应用程序”创建聚合物应用程序并运行该应用程序时,它会按预期工作,单击按钮时计数器会递增 假设页面具有 出口“包装:聚合物/初始省道”; 是index.html,试图通过从index.html中删除以下行来重构应用程序 导致以下错误: 异常:NoSuchMethodError:未找到方法:“whenPolymerReady” 接收

我使用的是Dart SDK 1.5.3 | polymer 0.11.0+5 | Windows x64。当我使用模板“使用聚合物库(移动友好型)选项的示例web应用程序”创建聚合物应用程序并运行该应用程序时,它会按预期工作,单击按钮时计数器会递增

假设页面具有


出口“包装:聚合物/初始省道”;
是index.html,试图通过从index.html中删除以下行来重构应用程序


导致以下错误:

异常:NoSuchMethodError:未找到方法:“whenPolymerReady”
接收方:“JsFunction”的实例
参数:[闭包:()=>动态](包:polymer/src/loader.dart:115)
异常时中断:NoSuchMethodError:未找到方法:“whenPolymerReady”
在创建任何聚合物应用程序时,我一直在使用这种机制,但从未见过这样的例外情况,尽管我在网上看到过涉及Dart的文档


文档表明此问题已解决,但我当前使用的聚合物中肯定存在此问题。

我不在该开发中,但您的问题似乎是应用程序中使用的API或依赖项。

我认为您的转换器设置缺少入口页

transformers:
- polymer:
    entry_points:
    - example/index.html

否则,如果有任何其他警告或错误指向根原因,请仔细查看输出

我刚刚遇到了相同的问题。 您确定聚合物导入在javascript导入之下吗


而不是:


您的每个组件(每个包含
标记的文件)都必须导入polymer.html

确保clickcounter.html包含以下行:



在顶端。(它打破了0.11的变化)。

我想我找到了解决办法

clickcounter.html | imports链接rel=“import”href=“packages/polymer/polymer.html |”。在入口点文件中,没有此类导入。将组件导入入口点时,似乎满足polymer.html条件。如果没有组件,导入必须直接放置在文件中


示例应用程序
出口“包装:聚合物/初始省道”;
Epimss材料设计
Dart的世界你好

从那以后一切都很顺利


同样的问题实际上在Dart SDK 1.6.0-dev.1.2中重新出现,并得到了类似的解决。不过,我不能说这是不是一个错误。只需添加此导入即可。我假设如果使用合法的组件,那么导入将允许从入口点文件中删除相同的导入。Dart或Dart聚合物专家之一可能能够解释实际发生的情况。期待深入的解释,因为这是我第一次观察到这个问题。

我从聚合物模板创建的虚拟应用程序开始运行良好,但一旦我将clickcounter移动到另一个目录,我就开始出现此错误(我相应地更新了引用)。我的新文件夹结构如下所示:

/lib
  /src
    /test
       clickcounter.dart
       clickcounter.html
/web
  polytest.html 
这是修改后的线条的外观:


我对这些事情一无所知,但对我来说,我似乎通过移动以下代码来解决它:


导出“包装:聚合物/初始dart”;
er的末尾到
的前面。
现在只有my index.html包含这些行。最后,我还将自定义元素导入移到核心元素/纸质元素导入之上。

我刚刚遇到了完全相同的问题。看起来代码停止工作了,我没有做任何更改

问题的根本原因是,出现了新版本的聚合物包装


因此,您可能应该在pubspec.yaml中使用依赖项。我刚刚明确地将Polymer的版本更改为旧版本。

但在执行预期运行的初始代码和移除Polymer组件的代码之间,依赖项和API都没有更改。您的Polymer软件包是最新的吗?请将您的软件包更新至最新版本。我必须使用最新的聚合物。运行pub-upgrade不会更改任何包。请确保它也不会显示任何
。。。(x个新版本可用)
?我的入门页看起来不错。我甚至没有编辑它。这个问题是在另一台机器上重新出现的,它安装得很干净,并且重复了这个过程。我最近也遇到过几次,但我不知道到底是什么原因造成的。当我修复所有与聚合物相关的东西时,它就消失了。可能是因为聚合物更新后的需求发生了变化。我真的不知道该修复什么。没有迹象表明存在任何其他问题。以前创建的其他dart应用程序与所有已安装的软件包一起运行良好。只需卸下组件即可导致问题。就好像保存入口点不会因为缺少更好的单词而“重新编译”。原来的页面似乎“永远”在那里。这一定是一个聚合物或Dart版本的问题,但。你能让这个项目在GitHub上,然后我可以看看。我会电子邮件给你一个zip版本现在。谢谢,我对生成的应用程序所做的更改是对导入和创建的实例进行注释。一切都与最初工作的应用程序中的一样。