我目前正在使用Express和Jade在NodeJS上建立一个网站。我的所有内容都是由Express处理的内部API提取的,其中包括导航和页面内容。
我检索页面内容并将其作为对象解析为视图:
app.get('/:id', function (req, res) {
var pageId = req.params.id;
sharepoint.listItems.list('Public Pages', function(err, items, nextUrl){
for (var i = 0; i < items.length; i++) {
if(items[i].Title == pageId){
res.render("pages/index.pug", {item: items[i]})
console.log(items[i])
}
}
});
})
在我的Jade视图中,我显示内容并包含标题:
include ../partials/header
block content
h2 !{item.AuthorId}
div !{item.Content}
现在问题是我在快速服务器上的另一个呼叫中检索我的标题链接:
app.get('/api/navigation', function (req, res) {
sharepoint.listItems.list('Navigation', function(err, items,nextUrl){
res.send(items)
});
});
我的问题是将导航调用中的对象包含到header.jade中的最佳方法是什么?截至目前,我没有将导航链接解析为header.jade文件。
我喜欢分离API调用的想法,所以我宁愿避免在mu页面调用函数中调用导航端点。
我希望这是有道理的。