尝试使用webcomponents但遇到了一个我没有得到的错误。
标记很简单,应该可行。 2个文件,都是html文件。
错误标记在控制台中的<script>
标记上。
感谢您的帮助。
PS。我正在运行Google Chrome测试版,以使customElements正常运行。
km-button.html
<script>
class KmButton extends HTMLButtonElement {
constructor() {
super();
}
}
customElements.define('km-button', KmButton, {extends: 'button'});
</script>
的index.html
<!DOCTYPE html>
<html>
<head>
<!-- import webcomponents -->
<link rel="import" href="./components/km-button.html">
</head>
<body>
<km-button>hej</km-button>
</body>
</html>
错误
km-button.html:1 Uncaught TypeError: Illegal constructor(…)KmButton @ km-button.html:7
答案 0 :(得分:4)
实际上它仍然不起作用(在你的更正之后)。
AFAIK在Chrome的自定义元素v1中尚未实现extends
功能。
因此,is=
语法只是(并且默默地)被忽略,您的按钮被视为标准<button>
。
答案 1 :(得分:0)
是的,当你扩展另一个DOM元素时,我似乎错误地认为<km-button></km-button>
标记应该是<button is="km-button">some text</button>
。
如果有人遇到同样的错误,请提出问题。