在_config.yml
我有:
navigation:
- text: Home
url: index.html
- text: About
url: about.html
- text: Blog
url: blog.html
- text: Portfolio
url: portfolio.html
在default.html
布局中,我有:
<ul class="nav-list">
{% for link in site.navigation %}
{% assign current = nil %}
{% if page.url == link.url %}
{% assign current = 'current' %}
{% endif %}
<li class="nav-list-item{% if forloop.first %}first{% endif %} {{ current }} {% if forloop.last %}nav-list-item-last{% endif %}">
<a class="{{ current }}" href="{{ link.url }}">{{ link.text }}</a>
</li>
{% endfor %}
</ul>
出于某种原因,这不起作用。为什么会这样?
答案 0 :(得分:4)
我刚刚发现你必须重新启动服务器并再次运行jekyll --server
,并且可以访问_config.yml
个变量。
然后在弄清楚之后回到这个页面并即将发布这个答案,点击add / show 4 more comments
并看到这也是由op发现的。所以将其作为答案发布。
答案 1 :(得分:0)
除了另一个答案:您可以 - 正如您在答案中提到的那样 - 使用 Ctrl + C 来结束当前运行的服务器(在您的CLI中)。 但,您也可以使用
启动服务器jekyll server -w
告诉Jekyll注意文件中的更改。虽然这不适用于_config.yml
的更改,但它适用于所有其他文件。请注意,这不起作用,包括--safe
选项,因此您不会收到错误。要抓住它们,我仍然建议您不时运行jekyll --safe build
以查看是否出现语法错误。在开发过程中,有时会运行jekyll doctor
/ jekyll hyde
。