应用程序内部的html元素

时间:2014-02-13 21:13:05

标签: dart dart-polymer

我正在尝试找到一种干净的方式来使用我创建的两次SVG元素。我想学习使用与dart相关的所有技术,所以我正在尝试使用Polymer。我创建了一个自定义元素,然后我再加载另一个自定义元素。

这是index.html

  <link rel="import" href="da-imageTool.html">
  </head>
  <body>  
    <da-imageTool ></da-imageTool> 
    <script type="application/dart">export 'package:polymer/init.dart';</script>
    <script src="packages/browser/dart.js"></script>
    <script src="packages/browser/interop.js"></script>
  </body>

DA-imageTool.html

  <polymer-element name="da-imageTool">
   <template>
    <div class="images" id="mainDiv"></div>
    <div class="images" id="secondDiv"></div>    
   </template>
   <script src="da-imageTool.dart" type="application/dart"></script>
  </polymer-element>

DA-imageTool.dart

@CustomTag('da-imageTool')
class ImageTool extends PolymerElement{


  DivElement div1;
  DivElement div2;

  ImageEditor ime;
  //ImageEditor ime2;
  //ImageEditor _selectedEditor;

  ImageTool.created(): super.created(){
    int a = 1;
  }
 }

int a = 1只是我设置断点的一行,以找出为什么所有这些都不起作用。 我不明白为什么但是没有创建元素。这是我得到的错误:

Exception: The null object does not have a getter '_observe@0x29474386'.
NoSuchMethodError : method not found: '_observe@0x29474386'
Receiver: null
Arguments: []
  HtmlElement&Polymer.observeProperties (package:polymer/src/instance.dart:514:34)
  HtmlElement&Polymer.prepareElement (package:polymer/src/instance.dart:153:22)
  HtmlElement&Polymer.polymerCreated (package:polymer/src/instance.dart:139:21)
  PolymerElement.PolymerElement.created (package:polymer/src/instance.dart:1088:19)
  ImageTool.ImageTool.created (http://localhost:3030/FigureSVG/web/da-imageTool.dart:17:24)

2 个答案:

答案 0 :(得分:1)

脚本标签与聚合物
一起进入头部 不确定interop.js脚本。

<head>
  <link rel="import" href="da-imageTool.html">
  <script type="application/dart">export 'package:polymer/init.dart';</script>
  <script src="packages/browser/dart.js"></script>
</head>

<body>  
  <da-imageTool ></da-imageTool> 
  <script src="packages/browser/interop.js"></script>
</body>

答案 1 :(得分:1)

我做了几次测试,现在我的代码很简单。使其有效的修正是:

  • 移动脚本标签

  • 将自定义元素全部重写为小写。

我记得曾读过关于强制性宣传的内容,但我没有看到任何关于小写的内容:(警告可能有用。