#css #node.js #express #pug
#css #node.js #экспресс #pug
Вопрос:
У меня есть файлы css для конкретных страниц, которые я хотел бы вызывать автоматически. У кого-нибудь есть хороший способ сделать это элегантно?
Ответ №1:
Это должно сделать это
link(rel="stylesheet", href="#{req.path '.css'}", type="text/css")
Где вы передаете либо req
(объект запроса) в качестве локальной переменной при рендеринге шаблона jade (или даже просто передаете req.path
как path
). Это можно просто обработать в вашем макете.jade и это будет работать для каждого из ваших маршрутов.
Если вы хотите пофантазировать, вы можете установить согласованный шаблон, в котором маршрут страницы сопоставляет 1 к 1 пути файловой системы для файла .css в вашем общедоступном каталоге. В этом случае вы могли бы легко использовать тег ссылки на таблицу стилей внутри условного и ссылаться на файл .css только в том случае, если вы найдете соответствующий файл на диске.
Комментарии:
1. спасибо, для остальных я поместил это в свои динамические помощники: path: function(req, res){ var path = req.route.path; if (path ===’/’){ return ‘home’; } обратный путь; }