自动渲染玉文件就好像它是一个html文件?

时间:2014-03-06 14:10:15

标签: node.js pug

尽管看起来很有用,但我找不到答案。

我想使用node.js托管一个站点来提供已编译的jade文件而不是html文件。目前,我正在使用:

app.get('/', function(req, res) {
    app.use(express.static(__dirname));
});

如果有人在page.jade输入内容,如何找到domain.com/page?此外,我可以在jade文件中编写链接(所以a(href='page') link会链接到上述页面)吗?

2 个答案:

答案 0 :(得分:1)

将路径设为

app.get('/:pageName')
// more code 
// then
res.render(req.params.pageName+'.jade')

req.params将包含属性名称pageName

中的最后一部分

答案 1 :(得分:0)

Express为其所谓的“视图引擎”提供了许多可能的选项。为了让它处理jade文件并将它们作为html提供,你必须将其配置为这样做。

如果您要重新开始,最简单的方法之一就是使用express命令mentioned in their guide创建项目。默认视图引擎是jade,以下命令将stylus设置为css处理器:

express --css stylus myapp

相反,如果您要配置自己的服务器,则需要配置视图引擎:

app.configure(function(){

  app.set('views', path.join(staticDir,'views'));
  app.set('view engine', 'jade');
  ... the rest of your setup ...
}
相关问题