14

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

4

5 回答 5

28

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

app.configure('development', function () {
    app.locals.pretty = true;
});
于 2013-02-19T19:20:31.820 回答
14

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

app.locals.pretty = true;

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

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

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

于 2011-11-04T01:47:55.530 回答
1

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

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

将输出

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

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

于 2011-11-03T19:14:34.920 回答
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
  });
};
于 2012-11-25T22:07:42.053 回答
0

对于使用 pug-cli 的人,您需要添加--prettycmd(终端)。像下面这样,

pug --pretty -w -o dist/html/ assets/pug/index.pug
于 2021-04-17T17:55:12.127 回答