Node.js 在没有express.js的情况下,如何使用jade渲染partials?

Node.js 在没有express.js的情况下,如何使用jade渲染partials?,node.js,templating,pug,Node.js,Templating,Pug,我找到的唯一信息是: 我复制了建议的文件夹结构(视图/分区),但在我放入 !=partial('header', {}) !=partial('menu', {}) 进入index.jade,我会看到一个空白屏幕,我从jade收到的错误消息是: 引用错误:./views/index.jade:3 1. 'p索引' 2. '' 3. '!=部分(\'header',{})' 未定义分部 我将非常感谢任何帮助!(我强烈建议不要使用express.js)我认为部分渲染是在express中完成的,因

我找到的唯一信息是:

我复制了建议的文件夹结构(视图/分区),但在我放入

!=partial('header', {})
!=partial('menu', {})
进入index.jade,我会看到一个空白屏幕,我从jade收到的错误消息是:

引用错误:./views/index.jade:3 1. 'p索引'
2. ''
3. '!=部分(\'header',{})'

未定义分部


我将非常感谢任何帮助!(我强烈建议不要使用express.js)

我认为部分渲染是在express中完成的,因此您必须先编写代码或编写自己的代码


我有自己的助手类用于jade渲染部分,您可以使用它或从中获得一些想法,(它正在使用和)

通过最新的节点/express,我获得了以下电影。jade模板可调用部分:

div(id='movies')
  - each movie in movies
    !=partial('movie', movie)
我在视图目录中的movie.jade与movies.jade一起

从app.js调用movies.jade时使用:


res.render('movies',{movies:[{title:'Jaws'},{title:'Un-Chien-Andalou'}]})

Jade有一个名为include的命令。只用

include _form
鉴于部分文件的文件名为*_form.jade*,并且自2012年8月(可能更早)起位于同一目录中,因此已从Express中删除部分文件

很多教程现在已经过时了。似乎可以通过include复制大部分部分功能

例如

电影,杰德

div(id='movies')
  - each movie in movies
    include movie
杰德电影

h2= movie.title
.description= movie.description

HTH

include在大多数情况下都有效,但不能执行递归包含之类的操作,因为它们是在编译时包含的。您不想在include中执行递归吗?嗨,Adam,使用链接的代码的方法是什么?看来这可能是解决我问题的办法!