我首先从sql获取数据,然后将其传递到车把。
在.handlebars /中使用view.js的标签内,我想访问医生,但是我一直在获取[object] [object]。我之前尝试过json.stringification它,但还是没有运气。最好的方法是什么?
umd.matchDocs(val2, function(data) {
console.log(data);
var renderDocs = {
doctors: data
}
res.render("dashboard", renderDocs);
});
答案 0 :(得分:2)
将对象传递到车把后,如何在脚本标签中访问该对象?
否,默认情况下不是。但是您可以根据需要手动提供数据。
传递给车把渲染操作的数据仅在渲染操作期间可用。如果希望以后可以在客户端<script>
标签中访问某些数据,则可以将Javascript变量“呈现”到包含所需数据的<script>
标签中。
在将数据呈现为Javascript变量时,请记住,您需要呈现实际的Javascript文本(转换为JSON通常会为您创建文本)。
在您的特定示例中,您可以在呈现代码中执行以下操作:
umd.matchDocs(val2, function(data) {
console.log(data);
var renderDocs = {
doctors: JSON.stringify(data)
}
res.render("dashboard", renderDocs);
});
然后在模板中:
<script>
var doctors = {{{doctors}}};
</script>
然后,您的页面中的Javascript将可以使用这一系列医生。
如果您没有看到如上所示的三括号,那就是告诉车把跳过数据中的任何HTML转义(因为这不是HTML)。