Tra*_*Liu 37 arrays logic mustache
我想用Mustache实现以下逻辑:
{{#if users.length > 0}}
<ul>
{{#users}}
<li>{{.}}</li>
{{/users}}
</ul>
{{/if}}
// eg. data = { users: ['Tom', 'Jerry'] }
Run Code Online (Sandbox Code Playgroud)
我应该修改users结构以满足需要吗?例如:
{{#hasUsers}}
<ul>
{{#users}}
<li>{{.}}</li>
{{/users}}
</ul>
{{/hasUsers}}
// eg. data = { hasUsers: true, users: ['Tom', 'Jerry'] }
Run Code Online (Sandbox Code Playgroud)
小智 66
对不起,这可能为时已晚.但我有类似的要求,并找到了更好的方法:
{{#users.length}}
<ul>
{{#users}}
<li>{{.}}</li>
{{/users}}
</ul>
{{/users.length}}
{{^users.length}}
<p>No Users</p>
{{/users.length}}
Run Code Online (Sandbox Code Playgroud)
这里的工作示例:http://jsfiddle.net/eSvdb/
tho*_*iha 29
如果你希望内部语句为数组的每个元素重复,那么使用{{#users.length}}会很有效,但是如果你只想让一个语句只运行一次,你可以使用:
{{#users.0}}
...
{{/users.0}}
{{^users.0}}
...
{{/users.0}}
Run Code Online (Sandbox Code Playgroud)