romich
@romich
Frontend разработчик

Как переопределять класс на каждой странице jade?

есть шаблон который я extend-ю на каждой странице. Мне необходимо изменять класс у body, чтобы на одной странице было "body.index", а на другой "body.secondary" и т.д. Естественно, не создавать же каждой странице собственный шаблон. Я пробовал через все, интерполяцию, миксины, ничего не помогает. Никто не знает как это сделать?
  • Вопрос задан
  • 793 просмотра
Решения вопроса 1
@itsjustmypage
На каждой странице:

extends /core/core.pug // подключаем шаблон

// создаём блок переменных, где объявляем наши переменные для страницы
block variables 
	- var pageClass = 'mainPage';		//- <body class="HERE">


В самом шаблоне:

block variables // подключение блока переменных со страницы в самом начале

// код вашего шаблона
doctype html
html.no-js(lang= pageLang)


Примечание: в jade работало, только если на страницах сначала объявлен блок переменных, а потом подключён шаблон. В pug можно и так и так.
Инструкция по блокам в pug: https://pugjs.org/language/inheritance.html

p.s. Можно прописать базовый путь для pug при сборке в галпе, так проще подключать шаблон на страницах.
gulp-pug( {basedir: *путь*} );
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы