我有一个用例,我想在Mustache / Hogan JS模板中的列表循环部分中访问父标记。
例如,这是我的数据结构:
var data = {
users: [{name: "John", age: 100},{name: "Max", age: 80}],
meta: {membership: "full"}
};
..这是我的Mustache / Hogan JS模板:
{{#users}}
h1 Hello there, {{name}}
{{/users}}
..呈现为:
<h1>Hello there, John</h1>
<h1>Hello there, Max</h1>
这一切都很好,但是我可以在 {{#users} ... {{/ users}}中访问 meta.membership 父变量部分?似乎标签仅限于本地上下文,因此在迭代用户时我无法输出meta.membership标签的值。
理想情况下,我想知道这样的事情是否可行:
{{#users}}
h1 Hello there, {{name}}
p You have a {{meta.membership}} membership
{{/users}}
期望的结果:
<h1>Hello there, John</h1>
<p>You have a full membership</p>
<h1>Hello there, Max</h1>
<p>You have a full membership</p>
提前致谢
答案 0 :(得分:4)
事实证明,Hogan JS确实支持Context Bubbling spec,所以根据问题我想要的输入实际上是评估我想要的输出! :)我只是遇到了问题,因为我正在处理一个重度嵌套的数据集&amp;几个Mustache包括所以我在路上给了我一些空白输出时犯了一些愚蠢的错误。
现在一切都很好 - 虽然我觉得我最好去找一个Hogan调试器来避免将来进一步受挫......;)
答案 1 :(得分:-1)
{{#users}}
h1 Hello there, {{name}}
p You have a {{#meta.membership}} membership
{{/users}}
或强>
{{#users #meta}}
h1 Hello there, {{name}}
p You have a {{membership}} membership
{{/users}}
尝试一下......可以工作,因为数据阵列的结构可以让它工作