来自this link在javascript中,自定义元素扩展按钮制作为:
var MegaButton = document.registerElement('mega-button', {
prototype: Object.create(HTMLButtonElement.prototype),
extends: 'button'
});
<button is="mega-button">
我尝试使用 dart 通过以下代码进行相同的操作:
class MegaButton extends ButtonElement {
static final tag = 'mega-button';
factory MegaButton()=>new Element.tag('button', tag);
MegaButton.created() : super.created() {
var shadow = this.createShadowRoot();
shadow.text='save';
}
}
document.registerElement(MegaButton.tag, MegaButton);
在html文件中
<button is="mega-button"></button>
<mega-button>click me</mega-button>
但出现此错误:
Exception: Unsupported operation: Class must provide extendsTag if base native class is not HTMLElement
请提供任何帮助。谢谢
最佳答案
document.registerElement 应该如下所示:
document.registerElement(MegaButton.tag, MegaButton, extendsTag: 'button');
=> new Element.tag('button', tag);
关于dart - Dart 自定义元素中的extendTag,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26314402/