Я использую express и jade, но когда я отлаживаю, я не хочу, чтобы jade сжимал мой html, есть ли какой-нибудь способ передать jade по умолчанию и сделать это не сжимает html.
Как выразить и нефрит не сжимает html?
Ответ 1
За время, прошедшее с момента написания этого ответа, для управления этим поведением была добавлена опция.
app.locals.pretty = true;
На данный момент нет. Эта функция обсуждалась здесь:
https://github.com/visionmedia/jade/pull/205
Однако html фактически не сжимается или не уменьшается по умолчанию. Он просто не отформатирован красиво. Самый простой способ, с помощью которого я смог сделать его доступным для чтения, - использовать инструменты Chrome dev, которые дают вам хорошее складное представление источника.
Ответ 2
Если вы используете Express 3.x, вы можете управлять сжатием через app.locals.pretty. Я обычно включаю его во время разработки:
app.configure('development', function () {
app.locals.pretty = true;
});
Ответ 3
Вы можете использовать Jade Comments для аннотации кода для просмотра в браузере.
//h1
h1 Some Title
//p
p some content
выводит
<!--h1-->
<h1>Some Title</h1>
<!--p-->
<p>some content</p>
Шаблон уже скомпилирован, когда он покидает сервер, поэтому, если вы хотите просмотреть шаблон в браузере, вам придется написать плагин, который декомпилирует html для jade и отображает декомпилированную версию.
Ответ 4
Да, новичок в nodejs, поэтому, возможно, здесь что-то не хватает; но в app.js добавление app.set('view options', {pretty: true});
было неэффективным (с использованием express 3.0.3).
.. не поддерживается? нашел обходное решение, например. по каждому маршруту:
exports.index = function(req, res){
res.render('index', {
[... other stuff ...]
pretty: true
});
};