Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 手柄未呈现JSON上下文数据,获取空模板_Javascript_Handlebars.js - Fatal编程技术网

Javascript 手柄未呈现JSON上下文数据,获取空模板

Javascript 手柄未呈现JSON上下文数据,获取空模板,javascript,handlebars.js,Javascript,Handlebars.js,我遇到了一个奇怪的问题,Handlebar正确地编译了我的模板,但是当传递上下文数据时,html中的结果字段是空白的。我已经确认我的JSON数据实际上是一个javascript对象,而不是字符串。如果在其他地方得到答复,我表示歉意。我看到了很多关于JSON字符串需要成为实际对象的答案,但正如我所说的,情况并非如此 模板: {{{每次下载} {{pagetitle}} {{description}} {{/每个}} JS: var source=$(“#项模板”).html(); var te

我遇到了一个奇怪的问题,Handlebar正确地编译了我的模板,但是当传递上下文数据时,html中的结果字段是空白的。我已经确认我的JSON数据实际上是一个javascript对象,而不是字符串。如果在其他地方得到答复,我表示歉意。我看到了很多关于JSON字符串需要成为实际对象的答案,但正如我所说的,情况并非如此

模板:


{{{每次下载}
{{pagetitle}}
{{description}}

{{/每个}}
JS:

var source=$(“#项模板”).html();
var template=handlebar.compile($.trim(source));
var html=模板({
下载:[
{pagetitle:'title',description:'TheDescription'},
{pagetitle:'title',description:'TheDescription'},
{pagetitle:'title',description:'TheDescription'}
]
});
html的结果(只有一个空白项):



如有任何见解,将不胜感激。如果我在别人看到这一点之前就弄明白了,我一定会发布一个更新。

你应该使用
this

{{#each downloads}}
<div class="download-item">
    <h3>{{this.pagetitle}}</h3>
    <p>{{this.description}}</p>
</div>
{{/each}}
{{{#每次下载}
{{this.pagetitle}}
{{this.description}}

{{/每个}}
我觉得有点傻,但我刚刚发现了我的问题。我试图添加这些车把作为一个旧网站的页面上的翻新的一部分。它使用的是modx进化CMS。我不能在dom中的脚本标记中使用把手模板,cms甚至在把手有机会处理它们之前解析出{{}}。我的解决方案是在CMS范围之外的外部加载模板。我会把你的答案标记为正确的,因为无论如何我都应该使用
this
。谢谢