CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
Svelte 与 Astro 入门/课时/Eleventy 静态站
RawBlame
课时目录12 节

Svelte 与 Astro 入门

  1. 01替代框架概览
  2. 02Svelte 基础
  3. 03SvelteKit
  4. 04Astro 入门
  5. 05Eleventy 静态站
  6. 06静态站点生成
  7. 07与 React 对比
  8. 08数据加载
  9. 09样式与组件
  10. 10部署
  11. 11何时选用
  12. 12综合练习

Eleventy 静态站

11ty 模板与数据文件。

25 分钟

Eleventy 静态站

Eleventy(11ty) 是 模板引擎驱动的静态站点生成器,没有默认「组件框架 runtime」。Markdown、Nunjucks、Liquid 等模板 + 数据文件 → 输出 HTML。适合个人博客、活动页、与 html-css-essentials 纯静态技能直接衔接。

学习目标

  • 理解 11ty 的输入目录、模板与输出
  • 会用 _data 与 frontmatter 注入列表数据
  • 对比 Eleventy 与 Astro / Next.js SSG

最小结构

.
├── .eleventy.js          # 配置
├── src/
│   ├── _includes/        # 布局片段
│   ├── _data/            # 全局 JSON/JS 数据
│   │   └── tracks.json
│   └── tracks.njk        # 列表页
└── _site/                # 构建输出
// .eleventy.js
export default function (eleventyConfig) {
  return { dir: { input: "src", output: "_site" } };
}

数据文件

src/_data/tracks.json:

[
  { "slug": "react-essentials", "title": "React 核心" },
  { "slug": "vue-essentials", "title": "Vue 核心" }
]

模板 tracks.njk:

{% for t in tracks %}
  <li><a href="/tracks/{{ t.slug }}">{{ t.title }}</a></li>
{% endfor %}

全局数据自动注入所有模板;单页可用 frontmatter 覆盖。思路接近 Astro Content Collections,但 无 Islands、无 .jsx——交互靠少量 vanilla JS 或外链 react-essentials 子应用。

何时选 11ty

选 Eleventy选 Astro / SvelteKit
几乎全是 Markdown/HTML需要 React/Vue 组件岛
团队熟悉 Nunjucks需要统一 Vite 生态
极致简单、零 client 框架需要 SSR 或 API 路由

与 frontend-toolchain-essentials 配合:npx @11ty/eleventy --serve 本地预览,--output=_site 后上传静态托管(见 ft-deploy)。

练习

  • 初始化 11ty 项目,用 JSON 渲染三条 track 链接
  • 抽 ,给 Markdown 页套同一
_includes/layout.njk
<head>
  • 说明:若要在页内加复杂表单,你会选 11ty 还是 Astro?一条理由
  • 小结

    Eleventy = 模板 + 数据 → 静态 HTML,框架负担最小。 下一课抽象 SSG 概念,并对照 Next.js。

    加载本节练习…
    ← 上一课Astro 入门下一课 →静态站点生成