2017-07-12 80 views
1

我想做一個邏輯,如果條件使用手柄酒吧使用或||但它不起作用。怎麼||在車把中工作。ifCond使用手柄js

<img src="{{#ifCond item.0.img_url '!==' '' || item.0.img_url '!==' null }} 
{{item.0.img_url}}{{else}}/assets/images/logo.svg{{/ifCond}}"> 

我使用這個輔助功能

Handlebars.registerHelper('ifCond', function (v1, operator, v2, options) { 

    switch (operator) { 
     case '==': 
      return (v1 == v2) ? options.fn(this) : options.inverse(this); 
     case '===': 
      return (v1 === v2) ? options.fn(this) : options.inverse(this); 
     case '!=': 
      return (v1 != v2) ? options.fn(this) : options.inverse(this); 
     case '!==': 
      return (v1 !== v2) ? options.fn(this) : options.inverse(this); 
     case '<': 
      return (v1 < v2) ? options.fn(this) : options.inverse(this); 
     case '<=': 
      return (v1 <= v2) ? options.fn(this) : options.inverse(this); 
     case '>': 
      return (v1 > v2) ? options.fn(this) : options.inverse(this); 
     case '>=': 
      return (v1 >= v2) ? options.fn(this) : options.inverse(this); 
     case '&&': 
      return (v1 && v2) ? options.fn(this) : options.inverse(this); 
     case '||': 
      return (v1 || v2) ? options.fn(this) : options.inverse(this); 
     default: 
      return options.inverse(this); 
    } 
}); 

我已經做了這樣的現在,但我不知道這是否是做或不正確的做法。

{{#ifCond item.0.img_url '!==' ''}} 
       {{item.0.img_url}} 
       {{#ifCond item.0.img_url '!==' null}} 
       {{item.0.img_url}} 
       {{else}} 
       /assets/images/logo.svg 
       {{/ifCond}} 
       {{else}} 
       /assets/images/logo.svg 
       {{/ifCond}} 

回答

0
   {{#ifCond item.0.img_url '!==' ''}} 
       {{item.0.img_url}} 
       {{#ifCond item.0.img_url '!==' null}} 
       {{item.0.img_url}} 
       {{else}} 
       /assets/images/logo.svg 
       {{/ifCond}} 
       {{else}} 
       /assets/images/logo.svg 
       {{/ifCond}}