Display JSON data using handlebars.js(使用handlebars.js显示JSON数据)
问题描述
我需要弄清楚如何将完整的JSON响应打印到我的页面上(甚至部分页面),但我似乎搞不清楚。稍后我将最终使用更多上下文填写页面。
JS文件:
app.get('/', function(req, res) {
var context
apiLib.fetch('acct:chars', function(err, result){
if(err) throw err
context = result;
console.log(result);
res.render('/', context);
});
});
车把:
{{#each context.characters}}
{{this.name}}
{{/each}}
JSON数据:
{
"result": {
'1234':{ //this is the character ID
"characters": {
"name": 'Daniel',
"CharacterID": '1234'
etc...
}
}
}
我的页面不打印任何内容,但Console会记录所有内容。我正在使用exts.js来处理路由。
推荐答案
一个问题是each帮助器,此处:{{#each context.characters}}。each所做的是在变量的当前上下文中查找。当您调用res.render('/', context)时,您已经将context对象传递给了Handlebar。因此,现在Handlebar正在中的context对象中查找名为context的属性,但找不到它。因此您应该将代码行更改为{{#each characters}}。
同样适用于您编写{{this.name}}的位置。我认为如果您解决了其他问题,这实际上是可行的,但是this是不必要的,因为把手会自动查看this(当前上下文)。因此,只需{{name}}就可以了。
res.json(context)。这将返回一个JSON响应。如果您的服务器配置为处理application/jsonMIME类型,则它应该在浏览器中呈现为纯文本。
这篇关于使用handlebars.js显示JSON数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:使用handlebars.js显示JSON数据
基础教程推荐
- 带角度的选项卡:仅使用 $http 在单击时加载选项卡 2022-01-01
- 即使每次插入第一个输入的值不同,第二个输入仍显示相同的输入值 2022-01-01
- 使用 jQuery 在悬停时交换 DIV 类 2022-01-01
- 从快速中间件中排除路由 2022-01-01
- 当木偶师打开Chrome时,不能使用Chrome扩展 2022-01-01
- CORS:当凭据标志为真时,无法在 Access-Control-Allow-Origin 中使用通配符 2022-01-01
- HTML5 画布调整为父级 2022-01-01
- 逻辑运算符 ||在 javascript 中,0 代表 Boolean false? 2022-01-01
- 在 Javascript 中使用 Fetch API 上传文件并显示进度 2022-01-01
- 最佳动态 JavaScript/JQuery 网格 2022-01-01
