在我的nodejs-express应用中,我正在使用车把引擎进行模板。与动态数据进行路由是可能的。我的应用程序有一个布局文件。如何动态传递数据到模板文件?
编辑:
这是我的模板文件。
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<nav>
<div>
<ul class="navbar-nav">
<li class="nav-item active">
<a>Home</a>
</li>
<li class="nav-item">
<a>about</a>
</li>
<li class="nav-item">
<a>contact</a>
</li>
</ul>
</div>
</nav>
{{{body}}}
</body>
</html>
我需要NAV项目(主页,关于联系),全部来自API呼叫。没有硬编码。
我认为您需要在车把上执行此操作:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<nav>
{{{navStuff}}}
</nav>
{{{body}}}
</body>
</html>
在您的快速路线中,您可以做到这一点:(我假设它的简单路由。您可以适应Rectrouter V4)
app.get('/home', function(req, res, next){
return res.render('app',{
body: toRender,
navStuff: menu
})
});
同样,如果您必须进行数据呼叫以根据页面获取菜单项,则可以采用以下方式:
app.get('/home', function(req, res, next){
getMenuFromDb(pathName).then(function(menu){
return res.render('app',{
body: toRender,
navStuff: menu
})
});
})
})