почему мой тег Jekyll liquid "join" не работает должным образом? - PullRequest
1 голос
/ 01 апреля 2020

У меня есть простой веб-сайт Jekyll на страницах GitHub, чтобы научить себя программировать.

Я пытаюсь сделать следующее:

  1. получить список элементов данных из файла yaml данных
  2. Элемент списка в виде гиперссылок
  3. соедините их с символом пули • (не имеет значения, я пробовал это с «и» и «,», и я не могу заставить их работать)

Это мой код:

{% for item in site.data.footerlinks %}
<a href="{{ item.link }}">{{ item.name | join: "•" }}</a>
{% endfor %}

Требуемый вывод выглядит примерно так:

Образ выходного примера того, что я хочу сделать

Ответы [ 2 ]

1 голос
/ 02 апреля 2020

Я построил Ответ Нипула Праджапати , чтобы дать вам что-то ближе к желаемому выходному скриншоту:

{% for item in site.data.footerlinks %}
  <a href="{{ item.link }}">{{ item.name }}</a>{% unless forloop.last %} <span>•</span>{% endunless %}
{% endfor %}

Объединение лучше использовать для данных, а не для представления. Поскольку у вас уже есть l oop, его eaiser для добавления символа в html. Тэг исключением останавливает применение этого символа для последнего элемента. Я регулярно пользуюсь этой таблицей , когда пишу jekyll. Это помогло мне быстро найти нужные функции и освоить новые.

Также возможно достичь этого результата, просто используя CSS элементы pusedo, на случай, если вы захотите еще один вызов.

1 голос
/ 02 апреля 2020

Пожалуйста, попробуйте этот код

    {% for item in site.data.footerlinks %}
    <a href="{{ item.link }}">{{ item.name }} </a><span>•</span>
    {% endfor %}

Возможно, это не правильное решение, но вы можете достичь желаемого результата.

...