Meteor Handlebars:{{#each}}块中数组中的值
Meteor Handlebars: value in array in {{#each}} block
我是使用Meteor包的Meteor/Handlebars的新手https://atmospherejs.com/aldeed/plans-stripe其中包含这两个助手。
AppPlans.listDefined() - to get the list of all our plans
- ["free", "monthly", "yearly"]
AppPlans.get() - to see which plan the user currently has.
- ["free"]
而且https://github.com/raix/Meteor-handlebar-helpers它有一个有用的助手:
{{$eq a b}} if a equals b then return true
我在HTML中显示计划,如下所示:
{{#each AppPlans.listDefined}}
<strong>{{this}}</strong>
{{/each}}
但我想做的是这样的事情;不起作用
{{#each AppPlans.listDefined}}
{{#if $eq AppPlans.listDefined AppPlans.get}}
<strong>{{this}}</strong>
{{else}}
<span>{{this}}</span>
{{/if}}
{{/each}}
解决这个问题的最佳方法是什么?
您当前正在比较两个数组,而不是两个标量。$eq
不起作用。由于您在计划上循环,因此您实际上希望查看当前(标量)计划this
是否在当前用户拥有的计划数组中。
{{#each AppPlans.listDefined}}
{{#if $inArray this AppPlans.get}}
<strong>{{this}}</strong>
{{else}}
<span>{{this}}</span>
{{/if}}
{{/each}}
然后是$inArray
助手:
Template.registerHelper('$inArray',function(s,a){
return a.indexOf(s) > -1;
});
相关文章:
- 如何在映射数组中添加换行符
- javascript结合了数组和字典
- 需要帮助设置json数组
- 不能从angular2中的子组件指定父组件中的数组
- 使用JS将数组转换为json对象
- 数组在递归方法中设置为null
- knockoutjs可观察数组
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 将数组从PHP传递到Javascript
- JavaScript数组排序(函数)用于对表行进行排序,而不是排序
- Meteor Handlebars:{{#each}}块中数组中的值
- 如何使用Handlebars循环数组对象和模板
- 如何使用Handlebars.js按状态拆分对象数组
- Handlebars在Node Express应用程序中渲染来自json数组的额外空对象
- Handlebars-如何将数组中的所有值呈现到模板模型中
- Handlebars没有在Emberjs中的数组上循环
- 引用Handlebars.js中的数组项
- 在Handlebars中迭代对象数组不工作
- 在无名对象或数组上实现handlebars.js循环
- 在Handlebars.js中循环使用多维数组