在expressjs中,Dustjs多个模板无法正常工作

在expressjs中,Dustjs多个模板无法正常工作500错误:模板未find:模板

我的基地防尘模板如下(template.dust)

<div class="page"> {+pageHeader}Hello World!{/pageHeader} <div class="bodyContent"> {+bodyContent/} </div> <div class="footer"> {+pageFooter} <hr> <a href="/contactUs">Contact Us</a> {/pageFooter} </div> </div> 

而我正试图在我的家庭内部调用这个基础模板。我得到如下错误

 Express 500 Error: Template Not Found: template at Object.load (C:\office\nodejs-example\express_example\node_modules\application-name\node_modules\dust\lib\dust.js:54:27) at Chunk.partial (C:\office\nodejs-example\express_example\node_modules\application-name\node_modules\dust\lib\dust.js:407:15) at body_0 (undefined:1:130) at Array.0 (C:\office\nodejs-example\express_example\node_modules\application-name\node_modules\dust\lib\dust.js:34:7) at EventEmitter._tickCallback (node.js:192:40) 

“home.dust”

 {>"template"/} {<pageHeader} {?username} Welcome {username} <a href="/items">Items</a> | <a href='/logout'> Log Out</a> {:else} <form method="POST" action="/signin"> <label>Usename <input type="text" name="username" id="s-user"></label> <input type="submit" class="submit" value="Login"> </form> {/username} {/pageHeader} 

路线类的方法

 exports.home = function(req, res){ res.render('home', {username : req.session.username}); }; 

使用dustjs-linkedin包合并包(dustjs包不再维护)。 两者都在npm上。 您可以通过执行以下操作将灰尘模板与布局一起使用:

layout.dust

  <body> <h1>{title}</h1> {+content} This is the base content. {/content} </body> 

index.dust(网页部分)

 {>"views/layout.dust"/} {<content} This is loaded from a partial. {/content} 

app.js

 var dust = require('dustjs-linkedin') , cons = require('consolidate'); app.engine('dust', cons.dust); 

完整的例子: https : //github.com/chovy/express-template-demo

为了解决这个问题,我写道:作为帮手的klei-dust ,像巩固一样,使用dustjs-linkedin和express 3.x. klei-dust和consolidationate.dust之间的主要区别在于前者不需要相对于app根的partials和base模板path,也不需要指定模板文件扩展名。

你的index.dust可能看起来像这样:

 {>layout/} {<content} Body content... {/content} 

鉴于你有一个layout.dustlayout.dust在同一个文件夹中。

你并不孤单,这个问题已经把我逼疯了! Express的作者解释说,整合中有一个问题(使用Dust in Express的包)。

是啊这里面有一个巩固的问题,
这些引擎不提供
这个机制现在很笨拙

由: 谷歌groupes的快递(tjholowaychuk)的作者