繁体   English   中英

如何在node.js中实现jade模板继承

[英]How to achieve jade template inherit in node.js

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

  |__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

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

所以我的代码有什么问题?

确保在content.jade包含关键字“append”。

extends layout

block append content
  h1 this is from nested template

更多关于这里。

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

如果你纠正这个是否有效?

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

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

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

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

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

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

3)将布局设置为false:

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

4)如果您使用express,请检查您是否正在呈现正确的文件

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

希望有所帮助

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM