我为节点编写了一个小型快速站点。我正在使用Jade进行布局,并尝试处理新的扩展/块位。当我在这里使用标准布局/子视图模式列表时,一切都很好:
https://github.com/visionmedia/express/blob/master/examples/jade/views/layout.jade
我想要花哨并使用块将自定义html填充到主布局的特定部分。所以我转换到看起来更像这样的东西:
https://github.com/visionmedia/jade/blob/master/examples/extend-layout.jade
https://github.com/visionmedia/jade/blob/master/examples/extend.jade
使用上面扩展布局示例中的确切代码,我的页面将始终呈现extend-layout.jade部分,但不会呈现内部的内容。块内的任何东西似乎都不会被渲染。我试过这个,但它没有帮助:
https://github.com/visionmedia/jade/issues/377
我正在运行节点0.6.2,表示0.2.5,并且玉0.18。任何人?
答案 0 :(得分:1)
现在不推荐使用Express的v3来布局配置条目。
您只能使用阻止/扩展样式。
答案 1 :(得分:0)
所以我已经弄明白了什么。我手动指定要在express中使用的布局 - 我将其设置为正确的布局,但删除该行解决了问题。示例(遇到其他人):
exports.index = function(req, res){
res.render('index', { title: 'Express' }) // this works!
res.render('index', { title: 'Express', layout: 'layout' }) // this doesn't work
};
我原本期望一种不同的行为 - 包括这样的显式布局只会导致子视图无法在主布局中呈现。