我有这个快速应用程序,mongoDB作为数据库,把手作为我的服务器端模板引擎。我在我的应用程序中没有使用AngularJS或Ajax。
在其中一个路由中,我必须渲染页面以及从数据库发送json文件。但是,我无法做到这一点。
以下是我的路线的代码段:
router.get('/disks', function(req, res, next) {
places.find({"category": "disks"}, function(err, disks){
if(err){
throw err;
}
res.render('disks',
{
'risime': JSON.stringify(disks)
});
console.log(disks); // PROPERLY LOGS TO THE CONSOLE
});
});
在hbs中,我试图抓住它,但我甚至不认为它是JSON。
以下是在客户端记录的方式:
[{"_id":"5704630a7d4cd367f8dsdce7","name":"Seagate",:"This awesome Hard disk",","categories":["SDD","256GB"]}]
问题是什么?如何解决?
答案 0 :(得分:1)
" html逃脱"它的把手" html逃脱"你的字符串(这是你通常想要的)。
如果您不想要,可以使用" triple-stash"符号,像这样:
{{{risime}}}
答案 1 :(得分:0)
我认为你需要在渲染之前添加它:
res.type('application/json');
客户端将知道这是一个JSON,而不是HTML或纯文本,它将正确显示。
我希望我的回答会对你有帮助。