Используя Assemble, генерировать HTML-файлы из нескольких файлов данных, используя один файл шаблона?

Я пытаюсь использовать Assemble для создания нескольких статических файлов из нескольких файлов данных, используя один шаблон.

Более подробно, у меня есть 12 файлов JSON, представляющих данные для рецептов приготовления, и один файл Handlebars, recipe.hbs, с файлом макета default.hbs.

Я хочу вывести файл HTML на основе каждого из этих файлов JSON.

Структура файла:

/templates
    /data
        recipe1.json
        recipe2.json, etc.
    /layouts
        default.hbs
    /pages
        recipe.hbs

Выход:

/output
    recipe1.html (based on recipe1.json)
    recipe2.html (based on recipe2.json), etc.

Похоже, это возможно с помощью коллекций, но я не могу понять, как настроить файл Grunt.

Благодарю.

1 ответ

Решение

Я создал этот гист: https://gist.github.com/doowb/ca6f3321a05f6ac727e5 с кодом в Gruntfile.js файл для динамического создания pages список с комбинированным шаблоном рецепта и данными рецепта.

Эти строки являются ключом к созданию pages массив. Они могут быть перемещены в другой файл и необходимы для очистки файла.

Эта строка добавляет pages массив к pages варианты сборки, чтобы они были построены.

Если у вас нет других страниц, которые нужно построить, используйте эту строку, чтобы установить dest, не вытягивая другие страницы.

Надеюсь это поможет.

Другие вопросы по тегам