Metalsmith-collection не находит файлы уценки

У меня есть статический веб-сайт, использующий рули и мастера по металлу. Я могу создать collection под названием carriers из моего файла конфигурации metalmith, но плагин pattern игнорирует файлы уценки, поэтому carriers всегда пуст

В моем JS-файле есть конфигурация metalmith следующим образом

      ...//other metalsmith plugins
      .use(
        collections({
          carriers: { pattern: '**/*.md' }
        })
      )
      .use(markdown())
      .use(
        layouts({
          engine: 'handlebars',
          directory: './src/layouts',
          partials: './src/partials'
        })
      )
      ...//other metalsmith plugins

И мой carriers.hbs содержит следующее

    <section id = "carriers" class = "integrations">
      <div class = "cards">
        {{log collections}}
        {{#each collections.carriers }}
          <h5>{{this.title}}</h5>
        {{/each}}
      </div>
    </section>

Встроенный помощник {{log collections}} Handlebars регистрирует этот { carriers: [ metadata: undefined ] }, и сгенерированный html-файл выглядит следующим образом

<main>
  <section id = "carriers" class = "integrations">
    <div class = "cards">

    </div>
  </section>
</main>

Так что же мне здесь не хватает?


181
1

Ответ:

Решено

Update
So I got more experience with Metalsmith and now got to know why the markdown files were not available. This is because of the Metalsmith.source('my-directory') did not contain the markdown files and they were in another folder.


К сожалению, у меня нет решения для этого, потому что мой проект был слишком большим, чтобы его можно было отследить, имея мой небольшой опыт работы в Metalsmith. Тем не менее, основные моменты, которые, как я считаю, вызывают проблемы, и на которые следует обращать внимание:

  1. Структура плагина интернационализации важна, чтобы помнить, как она работает с другими плагинами.
  2. Порядок плагинов в процессе сборки (например, markdown() должен быть перед layouts()), иначе вы можете получить ошибку или неожиданные результаты
  3. Выкройка плагина collections