У меня есть приложение, которое имеет 3 страницы, которые я хотел бы быть автономными. В интересах кода DRY я хотел бы сделать «включено» для содержимого верхнего и нижнего колонтитула. Я просмотрел документы и примеры для grunt-html-build, и я как-то подкрался. Весь HTML-код находится на пути 'src/html'
, причем включает в себя находящуюся в подпапке под названием «включает»: 'src/html/includes'
.Использование Grunt для базовых включает в себя
Вот HTML пример:
<!doctype html>
<html>
<head>
<!-- build:section head --><!-- /build -->
</head>
<body>
<p>A bunch of unique content for each of the pages</p>
<!-- build:section footer --><!-- /build -->
</body>
</html>
А потом в моей gruntfile у меня есть следующие:
htmlbuild: {
src: 'src/html/app-*.html',
dest: 'dist/',
options: {
sections: {
head: 'src/html/includes/head.html',
footer: 'src/html/includes/footer.html'
}
}
}
Я уверен, что это только синтаксис, но я не могу показаться, чтобы получить мимо этой ошибки:
Warning: an error occurred while processing a template (Unexpected identifier).
Сам факт, что это «Неожиданный идентификатор» говорит мне, что я не усекаю «i» или не пересекаю «t» должным образом. Более опытные глаза оцениваются!
Примечание: Вместо этого я рассмотрел использование grunt-contrib-concat, но без globbing мне пришлось бы сделать 3 отдельные задачи, чтобы сохранить неповторимый контент неповрежденным.
[редактировать добавить:]
Я имел успех для моей очень простого варианта использования, используя другую черновую задачу под названием (соответственно) grunt-includes. Я смог соответствующим образом включить файлы.
Тем не менее, я по-прежнему интересуюсь мощностью для grunt-html-build для условного создания dev или дистрибутивных пакетов. Любое понимание все еще ценится!
Спасибо, что нашли время ответить! Я получил код непосредственно из их документации. Вот основной образец, который я получил: https://github.com/spatools/grunt-html-build/blob/master/docs/sections.md, который показывает, что у него нет цели. Как бы то ни было, я дал ему уйти, и он вернул эту ошибку: «Невозможно прочитать свойство« dest »неопределенного». Я удивлен, что не могу найти больше статей или образцов для «базовых включений»! –
Привет, я обновил свой ответ с помощью точного файла Gruntfile, который я успешно проверил на своей машине. Можете ли вы попробовать это на вашей стороне? –
Кроме того, я пробовал без определения цели, и я получил ошибку. Цель ('dist' here) ** обязательна - я предполагаю, что в документации grunt-html-build есть некоторые проблемы. –