在Handlebars模板中的另一个If语句中使用If语句
If statement within another if statement in Handlebars templates
这些都是我传递给handlebars模板的对象。
self.template = template({ data: self.model, lang:self.lang, page:self.mainPage, subpage:self.param });
然后在foreach循环中,我有一个if语句,我不能访问父上下文元素。我在模板内的代码和问题如下所示:
{{#each data}}
<h1>{{../subpage}}</h1> --> This is giving me a subpage value
{{#if this.brand}}
{{#if ../subpage}}
<h1>WHY IS THIS NOT SHOWING?</h1> --> This is what i am trying to achieve
{{/if}}
{{/if}}
{{/each}}
有什么办法吗?非常感谢所有的回答/评论!
{{#if this.brand}}
进入另一层上下文,因此必须两次转义到父上下文。
你的模板应该是:
{{#each data}}
<h1>{{../subpage}}</h1>
{{#if this.brand}}
{{#if ../../subpage}}
<h1>This shows now!</h1>
{{/if}}
{{/if}}
{{/each}}
这应该与self.model
值类似:
[
{
brand: "Brand A",
otherFields: "here"
}
]
下面的jsFiddle演示了解决方案:嵌套if语句上下文转义
我希望这对你有帮助!
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 如何在 API 调用后和 if 语句中启用提交按钮
- 带有多个elseif的Javascript if语句
- Sharepoint JScript if语句未执行
- for循环中的javascript if语句找不到==
- jquery if语句返回return wong语句
- 在if语句下的html中使用javascript变量
- 将错误与if语句混淆
- 循环通过数组的If语句不起作用
- jQuery模板中的If语句
- 如何从数据库中回显If语句
- 如何减少if语句的数量
- 在Javascript中将一个值和字符串数组转换为if语句
- Dropbox oauth认证的IF语句的第二部分是't已触发
- MVC Jquery-按钮点击-获取if语句错误
- 如何重写Javascript If语句以选择Classes而不是ID's的HTML格式
- KnockoutJS:为虚拟元素使用嵌套的条件if语句
- If语句发布或操作员发布
- 清除函数中if语句内部不起作用的间隔
- 使用if语句重新循环