Node.js 想知道使用基于Express渲染变量的Handlebar Partials的最佳方法吗
所以我想知道当我有一个渲染变量集时,在Express中加载把手部分的最佳方法是什么Node.js 想知道使用基于Express渲染变量的Handlebar Partials的最佳方法吗,node.js,express,render,handlebars.js,Node.js,Express,Render,Handlebars.js,所以我想知道当我有一个渲染变量集时,在Express中加载把手部分的最佳方法是什么 app.get('/raves-reviews/corporate-clients', function (req, res) { res.render('raves-reviews.html', { //This of this a micro layout layout: 'main', //this is the main layout titl
app.get('/raves-reviews/corporate-clients', function (req, res) {
res.render('raves-reviews.html', { //This of this a micro layout
layout: 'main', //this is the main layout
title: 'Raves & Reviews',
corporate: true, //this is part of idea 1
page: 'corporate-clients' //this is part of idea 2 and 3
});
});
因此,当用户访问mysite.com/raves-reviews/corporate-clients时,Handlebar将首先加载主布局,我使用导航设置了主布局,以显示主页滑块或raves review滑块(如果不是主页)
然后它将加载raves-reviews.html页面,这只是一个手柄文件,我已将扩展名重命名为.html,这将是一个微模板,将容纳4个其他页面
我不想做的是使用相同的raves-reviews.html微模板制作4个页面,并且必须将其他每个页面作为部分包含。我宁愿做一个页面,将能够处理它需要的每一个部分,就像主布局与网站中的每一个其他页面一样
想法1是在raves-reviews.html中创建4个{{{if}}块
{{#if page1}}
{{> page1}}
{{/if}}
{{#if page2}}
{{> page2}}
{{/if}}
{{#if page3}}
{{> page3}}
{{/if}}
{{#if page4}}
{{> page41}}
{{/if}}
所以想法2是使用我在这里找到的一个助手:创建页面,但是我确实在那里读到,把手应该是没有逻辑的。所以我不确定这是否是一个好的方法,将逻辑调用到一个模板系统中,该模板系统设计为不使用逻辑
想法3是看看是否有一种方法可以使用app.get中的page变量来创建一个partial,但我不是100%确定如何实现它。我最初的想法是:
{{> {{page}} }}
如果有任何其他方式,我完全接受任何其他想法。谢谢大家。你可能应该选择选项1,因为你已经做了是的,也许我只是想得太多了