索引.html
<!DOCTYPE html>
<html>
<head>
<script src="https://google.github.io/traceur-compiler/bin/traceur.js"></script>
<script src="https://google.github.io/traceur-compiler/src/bootstrap.js"></script>
<script>
traceur.options.experimental = true;
</script>
<link rel="import" href="x-item.html">
</head>
<body>
<x-item></x-item>
</body>
</html>
和我的网络组件: x-item.html
<template id="itemtemplate">
<span>test</span>
</template>
<script type="module">
class Item extends HTMLElement {
constructor() {
let owner = document.currentScript.ownerDocument;
let template = owner.querySelector("#itemtemplate");
let clone = template.content.cloneNode(true);
let root = this.createShadowRoot();
root.appendChild(clone);
}
}
Item.prototype.createdCallback = Item.prototype.constructor;
Item = document.registerElement('x-item', Item);
</script>
而且我没有收到任何错误,也没有收到我期望显示的内容,知道这是否真的有效吗?
这是如何以 ECMA6 语法扩展 HTMLElement 的吗?
E:将它完全放在一个页面中至少现在可以解决问题我知道它是创建自定义组件的正确方法,但问题是将它放在一个单独的文件中我认为这与<link rel="import" href="x-item.html">
我尝试添加的跟踪器处理方式有关输入的类型属性没有运气。