Длина отображаемой коллекции Eleventy: удобное руководство по подсчету в Eleventy

Привет, ребята! Сегодня мы собираемся погрузиться в мир Eleventy и изучить различные методы отображения длины коллекции в этом замечательном генераторе статических сайтов. Итак, независимо от того, являетесь ли вы опытным пользователем Eleventy или только начинаете, эта статья для вас!

Прежде чем мы перейдем к примерам кода, давайте быстро объясним, что мы подразумеваем под «коллекцией» в Eleventy. В Eleventy коллекция — это группа связанных элементов контента. Это может быть коллекция сообщений в блоге, портфолио проектов или любой другой тип контента, который вы хотите систематизировать. Теперь перейдем к делу и рассмотрим некоторые методы отображения длины коллекции.

  1. Использование фильтра length:

В Eleventy вы можете использовать фильтр length, чтобы получить количество элементов в коллекции. Вот пример того, как его можно использовать в шаблоне:

{{ collections.myCollection | length }}

В приведенном выше фрагменте кода myCollection— это имя коллекции, элементы которой вы хотите подсчитать. Фильтр lengthвозвращает количество элементов в коллекции.

  1. Использование JavaScript:

Eleventy позволяет вам писать код JavaScript в ваших шаблонах. Вот пример того, как вы можете использовать JavaScript для подсчета элементов в коллекции:

{% raw %}
<script>
  const collectionLength = {{ collections.myCollection | length }};
  console.log(collectionLength);
</script>
{% endraw %}

В приведенном выше фрагменте кода мы используем JavaScript для присвоения длины коллекции переменной с именем collectionLength. Затем мы записываем значение в консоль для демонстрационных целей.

  1. Использование специального фильтра:

Если вам часто приходится отображать длину коллекций, вы можете создать собственный фильтр в Eleventy. Вот пример:

module.exports = function (eleventyConfig) {
  eleventyConfig.addFilter("collectionLength", function (collection) {
    return collection.length;
  });
};

В приведенном выше фрагменте кода мы определяем собственный фильтр под названием collectionLength, который принимает коллекцию в качестве входных данных и возвращает ее длину. После регистрации фильтра вы сможете использовать его в своих шаблонах следующим образом:

{{ collections.myCollection | collectionLength }}

И всё! Это лишь некоторые из множества методов, которые вы можете использовать для отображения длины коллекции в Eleventy. Поэкспериментируйте с этими примерами и выберите тот, который лучше всего соответствует вашим потребностям.