在我的应用程序中,我将 html 导入A
到具有此文件的文件B
中。但它警告null。如果我B
直接在浏览器中打开,它会提醒模板 HTML dom 元素。这怎么会发生,同样的代码几乎来自谷歌自己的网络组件文档https://developers.google.com/web/fundamentals/architecture/building-components/customelements。
<template id="x-foo-from-template">
</template>
<script>
alert(document.querySelector('template'));
</script>
这是谷歌的例子:
<template id="x-foo-from-template">
<style>
p { color: orange; }
</style>
<p>I'm in Shadow DOM. My markup was stamped from a <template>.</p>
</template>
<script>
customElements.define('x-foo-from-template', class extends HTMLElement {
constructor() {
super(); // always call super() first in the ctor.
let shadowRoot = this.attachShadow({mode: 'open'});
const t = document.querySelector('#x-foo-from-template');
const instance = t.content.cloneNode(true);
shadowRoot.appendChild(instance);
}
...
});
</script>
谢谢