原生模板与插槽

Template & slot

原生组件模板和插槽

Template

demo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

<template id="demo">
<p>测试</p>
<!-- 插槽 -->
<slot name="default">默认文本</slot>
<slot >文本</slot>
<style type="text/css">
p { color: red }
</style>
</template>

<my-demo>
<div slot="default">文本2</div>
</my-demo>
<my-demo>
<div slot="default">文本3</div>
<div >文本4</div>
</my-demo>
1
2
3
4
5
6
7
8
9
10
11
12
customElements.define(
'my-demo',
class extends HTMLElement {
constructor() {
super()
const tempContent = document.getElementById("demo").content;

const shadowRoot = this.attachShadow({ mode: 'open' });
shadowRoot.appendChild(tempContent.cloneNode(true))
}
}
)

本文作者: 孟 虎
本文链接: https://menghu1994.github.io/blog/2025/02/Javascript/Template&Slot/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!