我已经看到很多其他类似的错误,但我不确定它们是否相关。 我基本上试图动态创建聚合物组件并将它们添加到现有页面,一旦工作,我想创建自己的聚合物组件并动态地添加/删除页面。
pubspec.yaml:
name: alm
description: alm
dependencies:
browser: any
polymer: ">0.15.3"
paper_elements: any
transformers:
- polymer:
entry_points:
- web/index.html
index.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Test</title>
<link rel="import" href="packages/paper_elements/paper_button.html">
</head>
<body unresolved>
<script type="application/dart" src="index.dart"></script>
<paper-button raised class="colored">colored</paper-button>
<paper-button raised disabled>disabled</paper-button>
<div id="more-buttons"></div>
<script src="packages/browser/dart.js"></script>
</body>
</html>
index.dart:
import 'dart:html';
import 'package:polymer/polymer.dart';
import 'package:paper_elements/paper_input.dart';
void main(){
initPolymer().run(() {
Polymer.onReady.then((_) {
DivElement div = querySelector("#more-buttons");
div.appendText("text 1 2 3");
PaperInput pinput = new PaperInput.created();
div.append(pinput);
});
});
}
我得到的例外:
打破例外:输入&#39; HtmlElement&#39;不是类型的子类型 &#39; PaperInput&#39; &#39;功能结果&#39;。
如果我尝试使用Element对象:
Element y = new Element.tag('paper-input');
div.append(y);
打破例外:输入&#39; HtmlElement&#39;不是类型的子类型 &#39; PaperInput&#39; &#39;功能结果&#39;。
例外:输入&#39; HtmlElement&#39;不是PaperInput&#39;类型的子类型。的 &#39;功能结果&#39;。 (包:paper_elements / paper_input.dart:40)
我也很好奇为什么一切都如此庞大:
我使用标准飞镖编辑器并点击Dartium中的运行来运行该应用程序。
更新
我已更新代码,现在收到不同的错误。 不得不更新pubspec.yaml中的聚合物版本,任何导致错误。
浏览器控制台:
Failed to load resource: the server responded with a status of 404 (Not Found)
http://localhost:8080/packages/web_components/webcomponents.js
Failed to load resource: the server responded with a status of 404 (Not Found)
http://localhost:8080/packages/web_components/interop_support.html
Failed to load resource: the server responded with a status of 404 (Not Found)
http://localhost:8080/packages/custom_element_apigen/src/common.dart
An error occurred loading file: package:custom_element_apigen/src/common.dart
我现在看到的是按钮的短暂闪烁,然后是白色屏幕。
工具输出给出了以下错误:
Resolving dependencies...
Got dependencies!
--- 6:10:00 PM Starting pub serve : ______ ---
Loading source assets...
Loading polymer transformers...
Serving alm web on http://localhost:8080
[Warning from ImportInliner on alm|web/index.html]:
line 10, column 1 of package:paper_elements/src/polymer/polymer.html: Failed to inline HTML import: Could not find asset web_components|lib/interop_support.html.
null. See http://goo.gl/5HPeuP#polymer_25 for details.
<link rel="import" href="../../../../packages/web_components/interop_support.html">
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Build completed successfully
查看建议的链接:
Error while inlining an import
An error occurred while inlining an import in the polymer build. This is often the result of a broken HTML import.
我无法真正看到我的index.html可能出现的问题以及我可以在paper_elements包下看到的导入。
UPDATE2:
将聚合物的更新版本更新为&gt; 0.15.3,并且pub upgrade
和pub cache repair
现在又看到了一个不同的例外:
Exception: Uncaught Error: created called outside of custom element creation.
Stack Trace:
#0 Blink_Utils.initializeCustomElement (dart:_blink:31040)
#1 _Utils.initializeCustomElement (dart:html:41640)
#2 _initializeCustomElement (dart:html:41835)
#3 Element.Element.created (dart:html:11675)
#4 HtmlElement.HtmlElement.created (dart:html:17615)
#5 HtmlElement&DomProxyMixin.HtmlElement&DomProxyMixin.created (package:paper_elements/paper_input.dart:4:1)
#6 HtmlElement&DomProxyMixin&PolymerProxyMixin.HtmlElement&DomProxyMixin&PolymerProxyMixin.created (package:paper_elements/paper_input.dart:4:1)
#7 PaperInput.PaperInput.created (package:paper_elements/paper_input.dart:39:26)
#8 main.<anonymous closure>.<anonymous closure> (http://localhost:8080/index.dart:12:31)
#9 _RootZone.runUnary (dart:async/zone.dart:1155)
#10 _Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:484)
#11 _Future._propagateToListeners (dart:async/future_impl.dart:567)
#12 _Future._completeWithValue (dart:async/future_impl.dart:358)
#13 _Future._asyncComplete.<anonymous closure> (dart:async/future_impl.dart:412)
#14 _asyncRunCallbackLoop (dart:async/schedule_microtask.dart:41)
#15 _asyncRunCallback (dart:async/schedule_microtask.dart:48)
#16 _handleMutation (dart:html:41819)
似乎可以正常使用纸质按钮,按钮实际显示:
PaperButton y = new PaperButton();
y.text = "KOTS";
y.raised = true;
div.append(y);
也许纸质元素中的错误会在需要时调查并记录错误。
答案 0 :(得分:1)
变压器配置错过了entry_page设置,聚合物应用的自定义主方法不完整(参见https://stackoverflow.com/a/20982658/217408)
对不起,简短的回答,我在手机上。