我已经定义了登录元素如下:
<polymer-element name="my-login" extends="form">
<template> ...</template>
和 Dart 类如下:
@CustomTag('my-login')
class MyLogin extends PolymerElement { .... }
在主应用程序组件中,我尝试按如下方式创建 my-login:
MyLogin p = new Element.tag("my-login", "FormElement");
这会产生异常:
异常(exception):“HtmlElement”类型不是“p”的“MyLogin”类型的子类型。
如果从聚合物元素声明中删除“extends=form”,则代码有效:
<polymer-element name="my-login">
并创建如下:
MyLogin p = new Element.tag("my-login");
如何动态创建扩展其他 HTML 元素的自定义元素?
最佳答案
你应该将它实例化为
Element y = new Element.tag('form', 'my-login');
似乎不起作用的是
MyLogin y = new Element.tag('form', 'my-login');
这应该导致插入元素的 HTML
<form is="my-login"></form>
关于dart - 动态创建聚合物元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20474071/