toc_item

<%
const slugify = (text) => text.toLowerCase().replace(/[^\w]/g, "-");  // 定义一个 slugify 函数,负责将文本转换为小写并替换非字母数字字符为横线
const slug = slugify(entry.name);  // 使用 slugify 函数将 entry.name 转换成 slug 格式(小写并且替换特殊字符)
%>

<li>
    <!-- 创建一个列表项,包含一个链接,链接的目标是基于 entry.name 创建的 slug -->
    <a href="#<%= slug %>">
        <span><%= entry.name %></span>  <!-- 显示条目的名称 -->
    </a>

    <!-- 如果该条目有子条目(children),则递归显示子条目的列表 -->
    <% if (entry.children.length) { %>
        <ul>
            <!-- 遍历每个子条目,并递归调用 'toc_item' 模板渲染子条目 -->
            <% for (const subentry of entry.children) { %>
                <%- include('toc_item', {entry: subentry}) %>  <!-- 调用 'toc_item' 模板渲染子条目 -->
            <% } %>
        </ul>
    <% } %>
</li>