Привет.
Можете подсказать такую вроде не сложную вещину
?
задача глобальная - разбить все на микрочастицы, и комбинировать как хочется.
1.
Есть шаблон основной страницы
- namespace demo
- template layout.general(@params)
- doctype
< html
< head
< title
{ @title }
# style css
.foo {}
# script
alert(1);
< body
< .hello
Hello me!
2.
Есть модуль А
- namespace A
{ template html(@params) }
< button
{ @buttonText }
{/ template }
#{ template styles(@params) }
#{ @buttonSelector } {
background: #f00;
outline: 0;
}
#{/}
#{ template scripts(@params) }
alert( #{@message} )
#{/}
{ template page(@params) }
???
{/ template }
Таких модулей может быть много.
Моя задача наследовать (может не совсем верная формулировка) каждый модуль от demo.layout.general
и на место стилей и скриптов в head ставить мои темплеиты.
Равно как и содержимое body также нужно заменить на A.html шаблон
Я пока себе не представляю, как это делается? При том, что мне нужно в каждый шаблон пробросить нужные переменные.
Т.е должно работать вроде как вот так
const a = ss.compileFile( path.resolve(__dirname, './../a.ss') );
a.page({
message: 'Some alert message',
buttonSelector: 'button.my-button',
buttonText: 'Click me!',
title: 'Кнопка же, ну'
});
Но я запутался с последовательностью.
Или в сторону block надо копать?