1

我在同一个文件夹中有两个玉模板,就像:

  |__layout.jade
  |__content.jade

并且 layout.jade 是父模板, content.jade 将从它继承:所以在layout.jade

doctype 5
html(lang="en")
  head
    title= title
  body
    block content

在里面content.jade

extends layout

block content
 h1 this is frome nested template

但是,当我运行它时,继承不起作用,它只显示父模板的内容

那么我的代码有什么问题?

4

4 回答 4

2

确保在content.jade.

extends layout

block append content
  h1 this is from nested template

更多关于这里。

于 2012-12-24T08:12:03.450 回答
1

这可能是一个完全的红鲱鱼,但我注意到你的两个文件似乎有不一致的缩进(至少如上面粘贴的那样)。

如果你纠正它,它会起作用吗?

于 2012-12-23T17:10:19.057 回答
1

我遇到了类似的问题,并在 stack-overflow/Jade 文档上尝试了 node.js 的各种答案。

在您的 app.js 文件中检查以下内容..

1)检查视图引擎是否设置为jade(现在更名为pug):

app.set("view engine", "jade");

2)设置视图文件夹(即您保存模板/视图文件的位置):

app.set("views", __dirname + "/views");

3)将布局设置为false:

app.set('view options', { layout: false });

4)如果您使用快递,请检查您是否正在渲染正确的文件

app.get("/", function(req, res){
    res.render("contents.jade");
});

希望有帮助

于 2016-12-26T16:48:06.603 回答
0

我测试了你的代码,没问题,你想试试更新版本的node.js和jade吗?

于 2013-08-07T00:16:05.977 回答