概述`<template>` 提供可克隆的离屏内容;`DocumentFragment` 作为轻量容器用于批量插入,避免多次重排。两者结合实现高效渲染。示例<template id="item">

<li class="item"><span class="title"></span></li>

</template>

<ul id="list"></ul>

<script>

const tpl = document.getElementById('item')

const frag = document.createDocumentFragment()

for (const t of ['A','B','C']) {

const node = tpl.content.cloneNode(true)

node.querySelector('.title').textContent = t

frag.append(node)

}

document.getElementById('list').append(frag)

</script>

工程建议批量操作:尽量在 Fragment 中构建并一次性插入;减少布局抖动。组件化:配合自定义元素与 Shadow DOM;提高可维护性与封装。兼容:在旧环境回退到字符串模板与 `innerHTML`;防止 XSS。参考与验证MDN `<template>` 文档:https://developer.mozilla.org/docs/Web/HTML/Element/templateMDN DocumentFragment 文档:https://developer.mozilla.org/docs/Web/API/DocumentFragment

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部