Node.js 服务器端JsRender中的布局嵌套

Node.js 服务器端JsRender中的布局嵌套,node.js,jsrender,Node.js,Jsrender,是否可以使用JsRender&Express作为渲染机制组织Node.JS中的视图和布局,如下图所示 网页的每一部分都是独立的文件,在呈现过程中,您将决定使用哪一部分 是的-你看过: 包括讨论嵌套模板的地方。 此处的示例:显示服务器和浏览器上的嵌套布局。例如,这一行 正在进行服务器模板合成:{{include tmpl='./templates/movie list.html'/}在布局电影模板中 您还可以基于服务器渲染时数据或上下文进行动态合成-因为您可以设置tmpl=。。。对任何表情。例如:

是否可以使用JsRender&Express作为渲染机制组织Node.JS中的视图和布局,如下图所示

网页的每一部分都是独立的文件,在呈现过程中,您将决定使用哪一部分

是的-你看过:

包括讨论嵌套模板的地方。 此处的示例:显示服务器和浏览器上的嵌套布局。例如,这一行 正在进行服务器模板合成:{{include tmpl='./templates/movie list.html'/}在布局电影模板中

您还可以基于服务器渲染时数据或上下文进行动态合成-因为您可以设置tmpl=。。。对任何表情。例如:

{{include tmpl=type=='a'?'…/a.html':'…/default.html'/} 或

{{include tmpl=~gettmlptype/}} 其中~getTempl是一个助手,您可以这样定义:

jsrender.views.helpers("getTmpl", function(type) {
  switch (type) {
    case "major":
      return "./templates/major.html";
  }
  return "./templates/base.html";
});
如果需要,可以让~getTmpl返回实际编译的模板,而不是模板的文件路径,例如通过编写

return jsrender.templates("./templates/major.html");