我使用express和jade,但在调试时不希望jade压缩我的html,有没有办法全局传递一个选项给jade,并使其不压缩html。
如果您使用Express 3.x,您可以通过app.locals.pretty控制压缩。我通常在开发时启用它:
app.configure('development', function () {
app.locals.pretty = true;
});
app.locals.pretty = true;
目前还没有这个功能。关于此已在此处进行讨论:
https://github.com/visionmedia/jade/pull/205
不过,默认情况下,HTML并不会被压缩或缩小。只是格式不好看。我发现最简单的方法是使用Chrome开发工具,它可以给你一个漂亮可折叠的源代码表示方式,使其易于阅读。
app.set('view options', {pretty: true});
。 - guilin 桂林app.set('view options', {pretty: true});
没有效果(使用express 3.0.3)。exports.index = function(req, res){
res.render('index', {
[... other stuff ...]
pretty: true
});
};
res.render('index', { /* view.locals */ })
)。如果你将它设置在app.locals上,它会扩展到所有的res.render()
调用中。有关app/view locals如何工作的一些文档。 - AlbertEngelB您可以使用Jade注释来为在浏览器中查看的代码添加注释。
//h1
h1 Some Title
//p
p some content
将输出
<!--h1-->
<h1>Some Title</h1>
<!--p-->
<p>some content</p>
模板一旦离开服务器就已经编译完成,因此如果您想在浏览器中查看模板,则需要编写一个插件将HTML反编译为Jade,然后显示反编译版本。
如果您正在使用pug-cli,您需要在cmd(终端)中添加--pretty
。像下面这样:
pug --pretty -w -o dist/html/ assets/pug/index.pug