node.js - node.js 如何在 Jade 和Express中使用动态布局

  显示原文与译文双语对照的内容

我正在尝试使用 Jade 和Express进行动态布局。 我看到了很多选择,但从来没有一种方法干净地完成。

我的应用程序将有多种模板,包括dynamiccaly其他模板。 这就像我的应用程序一样,所以我不能没有它。"。

下面是一个( 3类型模板) 示例: template_1template_2template_3

英镑 template_1 包括英镑template_2和另外一磅收费的template_3

如果是 static 我就会这么做:


# template.coffee


exports.index = (req, res) ->


 res.render 'template_1'



# template 1


Some HAML content



block content


 div.block


 include template_2


 div.block


 include template_3



但是,我想通过局部变量给出要使用的模板列表:

所以我想做这样的事情


# template.coffee


exports.index = (req, res) ->


 res.render 'template_1', {


 template_list: [


 'template_2',


 'template_3'


 ]


 }



# template 1


Some HAML content



block content


 - each current_template in template_list


 div.block


 include current_template



或者


# template 1


Some HAML content



block content


 - each current_template in template


 div.block


 include #{current_template}



但它能正常工作。 收费后的费用包括或者英镑作为字符串。

看来 Jade 是在手工之前编译的。

那么,有可能使动态包含? 还是部分的或是动态布局?

感谢你的帮助。

时间: 原作者:

考虑在客户端使用jadeify将这里呈现在客户端: 如果你还使用 browserify,则为 https://github.com/domenic/jadeify

你可以执行如下操作:


var template = require("./template.jade");



document.getElementById("my-thing").innerHTML = template({


 localVar:"value",


 anotherOne:"another value"


});



原作者:
...