Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/networking/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当前扩展Dart聚合物中自定义元素的方法?_Dart_Dart Polymer - Fatal编程技术网

当前扩展Dart聚合物中自定义元素的方法?

当前扩展Dart聚合物中自定义元素的方法?,dart,dart-polymer,Dart,Dart Polymer,我正在尝试创建一些自定义元素,它们都使用聚合体和Dart扩展单个自定义元素。按照Seth Ladd的G+帖子中的说明(尽管已经过时且未维护,但仍然是我能找到的扩展自定义[non-DOM]元素的唯一参考): 下面是我尝试做的这类事情的简化示例代码: 基本元素HTML: ... 这里的内容与模板有关。。。 基本元素省道: import'包装:polymer/polymer.dart'; @CustomTag('基本元素') 类BaseElement扩展了聚合关系{ BaseElement.cr

我正在尝试创建一些自定义元素,它们都使用聚合体和Dart扩展单个自定义元素。按照Seth Ladd的G+帖子中的说明(尽管已经过时且未维护,但仍然是我能找到的扩展自定义[non-DOM]元素的唯一参考):

下面是我尝试做的这类事情的简化示例代码:

基本元素HTML:


... 这里的内容与模板有关。。。
基本元素省道:

import'包装:polymer/polymer.dart';
@CustomTag('基本元素')
类BaseElement扩展了聚合关系{
BaseElement.created():super.created();
…这里还有其他基本类的东西。。。
}
第一个自定义子类元素HTML:


第一个自定义子类元素省道:

import'包装:polymer/polymer.dart';
导入'base element.dart';
@CustomTag('子元素-1')
类SubElement1扩展了BaseElement{
SubElement1.created():super.created();
…这里还有其他子类的东西。。。
}
我遇到的主要问题是Dart编辑器给我的错误(在运行时):

“因异常而中断:NotSupportedError:类型“sub-element-1”的注册失败。“extends”中指定的标记名是自定义元素名。请改用继承。”

编辑器似乎不喜欢子元素HTML中的扩展class='base-element'部分。但是,如果去掉该部分,基本元素的模板化HTML将被忽略,即使Dart代码使用继承。因此,我对这篇文章的最终问题是:

当前如何创建扩展其他自定义元素的自定义元素,以便它们使用基本元素的模板?


非常感谢您提供的任何帮助和/或信息。

我在导入基本元素的Dart文件时(在我的实际代码中,而不是上面的示例中)显然有一个输入错误,这使其他所有内容都被忽略了。这仍然是扩展自定义元素的正确方法,子元素将使用基本元素的模板。有时,在编程时,最微小的事情可能会引起最大的麻烦…

核心元素和纸质元素使用扩展元素。它们是Polymer.js,但大多数东西也适用于Polymer.dart。例如,
是如何应用于放置超级元素的内容的。是的,是我的一个打字错误把一切都搞砸了。当我发现这一点时,我曾想过删除这个问题,但我认为它的相关性似乎值得保留。我对“改用继承”的建议很感兴趣。有没有使用继承而不是扩展的例子?