Задать вопрос
7GIT
@7GIT

Как использовать условие в gulp-file-include?

Подскажите, как передать данные в navbar в зависимости от страницы?
В проекте созданы две страницы-шаблона (page1 и page2), в которые инклюдятся блоки.
<!DOCTYPE html>
<html lang="ru" data-color-mode="dark">

<head>
	...
</head>

<body class="layout">
	
	@@include('./parts/modules/header/header.html')

	@@include('./parts/modules/navbar/navbar.html')

	@@include('./parts/modules/body/main.html')
	
	@@include('./parts/modules/footer/footer.html')

</body>

</html>

Блок navbar - это меню, которое в зависимости от страницы меняется.
<div class="navbar">

	<!--Меню для page1-->
	<div class="navbar__list">
		<a href="#" class="navbar__item">nav-item1-for-page1</a>
		<a href="#" class="navbar__item">nav-item2-for-page1</a>
	</div>

	<!--Меню для page2-->
	<div class="navbar__list">
		<a href="#" class="navbar__item">nav-item1-for-page2</a>
		<a href="#" class="navbar__item">nav-item2-for-page2</a>
	</div>

</div>


Нужно сделать что-то вроде такого условия:
Если page1 показать navbar__list для page1 если нет не показывать...
Или, можно-ли как-то через json передать данные для соей странички?
  • Вопрос задан
  • 1863 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
YavaDev
@YavaDev
Инклудим файл с переменной:
@@include('./parts/modules/navbar/navbar.html', {
    "page": "page1",
})

Условия в navbar.html:
@@if (page === 'page1') {
    <span>Navbar for page 1</span>
}
@@if (page === 'page2') {
    <span>Navbar for page 2</span>
}

Переменную page и ее значения можете менять как угодно.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы