首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Handlebars.js否则If

Handlebars.js否则If
EN

Stack Overflow用户
提问于 2012-05-24 19:48:54
回答 8查看 320.8K关注 0票数 263

我正在使用Handlebars.js进行客户端视图渲染。If Else工作得很好,但我遇到了一个3路条件,它需要ELSE IF:

这不起作用:

代码语言:javascript
复制
{{#if FriendStatus.IsFriend }}
    <div class="ui-state-default ui-corner-all" title=".ui-icon-mail-closed"><span class="ui-icon ui-icon-mail-closed"></span></div>
{{else if FriendStatus.FriendRequested}}
    <div class="ui-state-default ui-corner-all" title=".ui-icon-check"><span class="ui-icon ui-icon-check"></span></div>
{{else}}
    <div class="ui-state-default ui-corner-all" title=".ui-icon-plusthick"><span class="ui-icon ui-icon-plusthick"></span></div>
{{/if}}

如果有车把,我还能怎么做?

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2012-06-04 23:40:13

Handlebar从3.0.0开始支持{{else if}}块。

Handlebar v3.0.0或更高版本:

代码语言:javascript
复制
{{#if FriendStatus.IsFriend}}
  <div class="ui-state-default ui-corner-all" title=".ui-icon-mail-closed"><span class="ui-icon ui-icon-mail-closed"></span></div>
{{else if FriendStatus.FriendRequested}}
  <div class="ui-state-default ui-corner-all" title=".ui-icon-check"><span class="ui-icon ui-icon-check"></span></div>
{{else}}
  <div class="ui-state-default ui-corner-all" title=".ui-icon-plusthick"><span class="ui-icon ui-icon-plusthick"></span></div>
{{/if}}

然而,在HandlebarsV3.0.0之前,您必须定义一个处理分支逻辑的帮助器,或者手动嵌套if语句:

代码语言:javascript
复制
{{#if FriendStatus.IsFriend}}
  <div class="ui-state-default ui-corner-all" title=".ui-icon-mail-closed"><span class="ui-icon ui-icon-mail-closed"></span></div>
{{else}}
  {{#if FriendStatus.FriendRequested}}
    <div class="ui-state-default ui-corner-all" title=".ui-icon-check"><span class="ui-icon ui-icon-check"></span></div>
  {{else}}
    <div class="ui-state-default ui-corner-all" title=".ui-icon-plusthick"><span class="ui-icon ui-icon-plusthick"></span></div>
  {{/if}}
{{/if}}
票数 415
EN

Stack Overflow用户

发布于 2013-10-23 15:53:02

我通常使用以下形式:

代码语言:javascript
复制
{{#if FriendStatus.IsFriend}}
  ...
{{else}} {{#if FriendStatus.FriendRequested}}
  ...
{{else}}
  ...
{{/if}}{{/if}}
票数 76
EN

Stack Overflow用户

发布于 2015-05-07 00:28:08

Handlebar现在从3.0.0开始支持{{else if}}。因此,您的代码现在应该可以工作了。

你可以在"conditionals“下看到一个例子(在这里稍微修改了一下,增加了一个{{else}}

代码语言:javascript
复制
    {{#if isActive}}
      <img src="star.gif" alt="Active">
    {{else if isInactive}}
      <img src="cry.gif" alt="Inactive">
    {{else}}
      <img src="default.gif" alt="default">
    {{/if}}

http://handlebarsjs.com/block_helpers.html

票数 40
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10736907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档