如何表达和玉不压缩HTML?

时间:2011-11-03 08:09:09

标签: node.js express pug

我使用express和jade,但是当我调试时我不希望jade压缩我的html,有没有办法在全局范围内传递一个选项jade并使它不压缩html。

5 个答案:

答案 0 :(得分:28)

如果您使用Express 3.x,则可以通过app.locals.pretty控制压缩。我通常在开发时启用它:

app.configure('development', function () {
    app.locals.pretty = true;
});

答案 1 :(得分:12)

自编写此答案以来,已添加一个选项来控制此行为。

app.locals.pretty = true;

目前,没有。此功能已在此处讨论:

https://github.com/visionmedia/jade/pull/205

但是,默认情况下html实际上并没有被压缩或缩小。它没有很好地格式化。我发现使其具有人类可读性的最简单方法是使用Chrome的开发工具,它为您提供了一个很好的可折叠表示源。

答案 2 :(得分:1)

您可以使用Jade Comments来注释您的代码,以便在浏览器中查看。

//h1
h1 Some Title
//p
p some content

将输出

<!--h1-->
<h1>Some Title</h1>
<!--p-->
<p>some content</p>

模板一旦离开服务器就已经编译好了,所以如果你想在浏览器中查看模板,就必须编写一个插件,将html解压缩为jade而不是显示反编译版本。

答案 3 :(得分:1)

嗯,这是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
  });
};

答案 4 :(得分:0)

对于使用 pug-cli 的用户,需要在 cmd(terminal) 中添加 --pretty。像下面这样,

pug --pretty -w -o dist/html/ assets/pug/index.pug
相关问题