6

私の_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>

何らかの理由で、これは機能していません。なぜこれなのか?

4

2 に答える 2

4

jekyll --serverサーバーを再起動して再実行する必要があることがわかりました_config.yml。変数にアクセスできるようになります。

それからそれを理解した後、このページに戻ってこの答えを投稿しようとしていたので、クリックadd / show 4 more commentsして、これもopによって発見されたことがわかりました。だから答えとして投稿してください。

于 2012-12-21T22:13:50.397 に答える
0

他の回答に加えて:回答で述べたように、Ctrl+を使用Cして(CLIで)現在実行中のサーバーを終了できます。ただし、次のコマンドでサーバーを起動することもできます。

jekyll server -w

Jekyllにファイルの変更を監視するように指示します。これはへの変更では機能しませんが_config.yml、他のすべてのファイルでは機能します。これはオプションを含めて機能し--safeないため、エラーが発生しないことに注意してください。それらをキャッチするために、jekyll --safe build構文エラーが発生したかどうかを確認するために時々実行することをお勧めします。同じことが実行中jekyll doctor/jekyll hyde場合によっては開発プロセス中にも当てはまります。

于 2013-07-14T12:29:52.773 に答える