Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.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 车把#每个车把都有一个故障_Javascript_Handlebars.js - Fatal编程技术网

Javascript 车把#每个车把都有一个故障

Javascript 车把#每个车把都有一个故障,javascript,handlebars.js,Javascript,Handlebars.js,我有一个把手模板,使用每个语句,一个嵌套在另一个语句中。 它工作得很好,直到内部的每个都遇到数据集中只有一个项的项,在这种情况下它不会输出任何东西。 这是我的模板: <div class="container"> {{#each stories.story}} <div class="story"> <h1 class="mask"> <span>

我有一个把手模板,使用每个语句,一个嵌套在另一个语句中。 它工作得很好,直到内部的每个都遇到数据集中只有一个项的项,在这种情况下它不会输出任何东西。 这是我的模板:

<div class="container">
    {{#each stories.story}}
        <div class="story">
            <h1 class="mask">
                <span>
                    {{copy.heading}}
                </span>
            </h1>
            <ul class="story-copy">
                {{#each copy.body.text}}
                    <li class="mask">
                        <span>{{this}}</span>
                    </li>
                {{/each}}
            </ul>
        </div>
    {{/each}}
</div>

{{{每个故事.故事}
{{copy.heading}
    {{{#每个副本.body.text}
  • {{this}}
  • {{/每个}}
{{/每个}}
有趣的是,正如我所说的,当copy.body.text有多个文本节点时,ul被输出时,它就工作了。如果只有一个,它就会空出来。
一定有什么东西我错过了。有人能帮忙吗?

无法复制您的错误。 你能发布你的数据吗? 这个对我很有用:

然而,尽管我不知道您的数据是什么样子的,但我认为您的模板应该有所不同:用于以下数据:

var data = {
    stories: [{
        copy: {
            heading: "hello",
            body: [
                "Hey"
            ]
        }
    }]
};

当只有一个
copy.body.text
时,可能它实际上不是一个数组,而是一个简单的字符串?你完全正确。我没有编写xml->json转换器,结果它只是一个直字符串。谢谢你的问题解决了我的问题。我们正在将一个XML文件动态转换为JSON,如果只有一个项,则转换器不会生成数组。嘘。
var data = {
    stories: [{
        copy: {
            heading: "hello",
            body: [
                "Hey"
            ]
        }
    }]
};