提问人:Jcott 提问时间:1/18/2023 最后编辑:Jcott 更新时间:3/15/2023 访问量:80
Front Matter 出现在页面上
Front Matter is Appearing on Page
问:
我在 11ty 网站上有布局链接。当我将 front matter 添加到基本模板时,front matter 会呈现并显示在浏览器中。我不明白为什么。注意:也使用双节棍。
base.njk:
---
test1: hello
---
<!doctype html>
HTML GOES HERE
层.njk:
---
test2: goodbye
---
{% extends "base.njk" %}
HTML GOES HERE
page.html:
---
layout: layer.njk
---
HTML GOES HERE
{{test1}}
{{test2}}
HTML GOES HERE
当我查看page.html时,模板可以正确呈现,但 base.njk 的正面内容出现在页面上。换句话说,我从字面上看到了破折号和属性/值声明。layer.njk 中的 front matter 未出现在页面上。
我试图完成的是在 base.njk 中建立全局常量,以便其他页面可以访问这些全局常量。
答:
0赞
joealmond
3/15/2023
#1
base.njk 不应包含 YAML 标头,因为它的内容将是 html 文件的基础!使用 html 标头和 bilerplate “<!doctype html>.........”启动文件。然后包括
{{ content | safe }}
以包含实际页面。
layer.njk 如下所示:
---
title: "Title goes here"
layout: "base.njk"
---
<h1>{{ title }} Home Page</h1>
11ty 将通过将 layer.njk 的主体插入 base.njk 来创建一个新的 HTML 页面
下面是一个不错的演练:https://www.freecodecamp.org/news/learn-eleventy/
评论