CSS в JS - это зло ;-) Это как гранатой гвозди заколачивать.
На заре веб программирования всякой дичи хватало. Но со временем выработались "хорошие практики" и из мира хаоса многое стало упорядочиваться. Наконец-то стали отделять "мух от котлет". И вот спустя 25 лет "новое поколение" сново наступает на те же грабли. Всё развивается по спирали :-)))
Используя Pug plugin, входной точкой является Pug файл. Все исходные файлы скриптов и стилей подключаются непосредственно в самом Pug файле с помощью require(). Это намного удобнее, чем импортировать стили в JavaScript файле. Pug plugin сам заменяет имена исходных файлов на их хешированные версии.
CSS в JS - это зло ;-)
Это как гранатой гвозди заколачивать.
На заре веб программирования всякой дичи хватало. Но со временем выработались "хорошие практики" и из мира хаоса многое стало упорядочиваться. Наконец-то стали отделять "мух от котлет". И вот спустя 25 лет "новое поколение" сново наступает на те же грабли. Всё развивается по спирали :-)))
Опечатка в предложении: "Вебпаку укажем, что используем плагин
pug-plugin
для файлов с расширением.pug
"Скорее всего, имелось в виду:
"Вебпаку укажем, что используем лоадер
pug-loader
для файлов с расширением.pug
"Pug plugin - это новый подход к обработке Pug файлов. Он намного облегчает использование Pug в проекте и имеет функциональность плагинов, таких как:
html-webpack-plugin
mini-css-extract-plugin
Используя Pug plugin, входной точкой является Pug файл. Все исходные файлы скриптов и стилей подключаются непосредственно в самом Pug файле с помощью
require()
. Это намного удобнее, чем импортировать стили в JavaScript файле. Pug plugin сам заменяет имена исходных файлов на их хешированные версии.Взято из pug-plugin:
Webpack конфиг:
Pug файл:
Сгенерированный HTML:
Pug плагин также имеет Pug лоадер, который содержит встроенные фильтры для подсветки синтаксиса кода и markdown.
Для активации встроенного markdown фильтра с highlighting'ом кода в markdown, нужно добавить опции в Pug лоадер:
В данный момент, для подсветки синтаксиса в markdown поддерживается PrismJS, который должен быть установлен дополнительно:
npm install -D prismjs
Теперь в Pug темплейте можно
:markdown
фильтр с блоками кода, например:Примеры использования pug-filters встроенных в pug-loader.