找到了一个麻烦的方法,express端的数据可以传入模本,拿node举例子,有这种渲染数据的语法!{data} ,如果内部是html可以直接渲染为html,不做处理。所以可以在express理由渲染前,自己用拼接字符串的方法创建嵌套标签。然后给jade,直接放在页面应该存在的位置。核心代码如下:
//评论生成区
var son = "";
function bianli(children){
var commentBox = "";
for(item in children){
var commentHtml = "";
commentHtml += "
"+children[item].subject+"
";if(children[item].children&&children[item].children.length != 0){
commentHtml += "
- "+bianli(children[item].children)+"
}
commentHtml = "
"+commentHtml+""commentBox += commentHtml;
}
return commentBox;
}
for(var i=0;i
var sonContent = "";
var comment = initData.commentsList[i];
sonContent += "
"+comment.subject+"
";if(comment.children&&comment.children.length != 0){
var children = comment.children;
sonContent += "
- "+bianli(children)+"
}
son += "
"+sonContent+""}
var commentHtml = "
- "+son+"
returnData.commentHtml = commentHtml;
//评论生成结束