我正在尝试使用doT.js
模板引擎。如果在dot.js
喜欢
if()
.....
else if
.....
else if
.....
else
.....
答案 0 :(得分:19)
您可以使用以下语法:
{{? it.name }}
<div>Oh, I love your name, {{=it.name}}!</div>
{{?? it.age === 0}}
<div>Guess nobody named you yet!</div>
{{?? it.age > 20}}
<div>You're old!</div>
{{??}}
You are {{=it.age}} and still don't have a name?
{{?}}
以上编译为:
function anonymous(it /**/)
{
var out='';
if(it.name)
{
out+='<div>Oh, I love your name, '+(it.name)+'!</div>';
}
else if(it.age === 0)
{
out+='<div>Guess nobody named you yet!</div>';
}
else if(it.age > 20)
{
out+='<div>You\'re old!</div>';
}
else
{
out+='You are '+(it.age)+' and still don\'t have a name?';
}
return out;
}
基本上,只需继续添加{{?? condition}}
,直至到达{{?}}
(块的结尾)。
答案 1 :(得分:1)
你可以这样做:
<!-- CONDITIONAL !-->
<!-- if -->
<div>
{{? it[0].firstName }}
{{=it[0].firstName }}
{{?}}
</div>
<!-- if / else if / else -->
<div>
<!-- if -->
{{? it[0].lastName }}
<span>First name is set</span>
<!-- else if -->
{{?? it[0].zip}}
<span>You don't have a last name</span>
<!-- else if -->
{{?? it[0].firstName}}
<span>Your firstName is: {{=it[0].firstName}}</span>
<!-- else if end -->
{{??}}
<!-- else -->
<span>You didn't set your name</span>
<!-- if end -->
{{?}}
</div>
&#13;
答案 2 :(得分:0)
此图片代码不正确:
<img src="{{=(user.absolutePath=='')?'img/user-shape.png':user.absolutePath;}}">
这是正确的:
{{~it.userCollection[0].attributes.admin :user:index}}
<div class="team-content-user">
<!-- if not null-->
{{?user.absolutePath}}
<img src="{{=user.absolutePath}}">
<!-- if not (not null) -->
{{??!user.absolutePath}}
<img src="img/user-shape.png">
{{??}}
{{?}}
{{=user.email}}</br>
</div>
{{~}}