Javascript js继续并中断循环
我有一个我正在迭代的列表:Javascript js继续并中断循环,javascript,loops,mustache,continue,ractivejs,Javascript,Loops,Mustache,Continue,Ractivejs,我有一个我正在迭代的列表: <ul> {{#list}} <li>{{this.value}}</li> {{/list}} </ul> 这在RactiveJS中可能吗?我不相信Ractive胡须中有break或continue语句(或类似的语句),至少根据他们的文档是这样的。不过,您仍然可以达到相同的效果 不要基于某个条件继续,只需处理相反的条件即可 {[#if !this.hidden]} {[do whatever.
<ul>
{{#list}}
<li>{{this.value}}</li>
{{/list}}
</ul>
这在RactiveJS中可能吗?我不相信Ractive胡须中有
break
或continue
语句(或类似的语句),至少根据他们的文档是这样的。不过,您仍然可以达到相同的效果
不要基于某个条件继续,只需处理相反的条件即可
{[#if !this.hidden]} {[do whatever...]} {[/if]}
绑定前过滤数组,而不是中断
循环
var listModified = [];
for (var i=0; i < ractive.get("list").length; i++) {
if (/* some condition */)
break;
listModified.push(ractive.get("list")[i]);
}
var listmedited=[];
for(var i=0;i
您可以创建一个计算属性,该属性返回一个忽略隐藏属性的数组。假设该列表是一个对象列表:
将此添加到您的配置中:
computed: {
listWithoutHidden: function(){
return this.get('list').filter(function(item){
return !item.hidden;
});
}
}
并更新模板
<ul>
{{#listWithoutHidden}}
<li>{{this.value}}</li>
{{/list}}
</ul>
{{{#listWithoutHidden}
- {{this.value}}
{{/list}
这个答案是正确的思维方式。在将数据发送到mustaches之前,您需要对数据进行逻辑处理。
<ul>
{{#listWithoutHidden}}
<li>{{this.value}}</li>
{{/list}}
</ul>