无法提供模板

Not able to feed a template

我使用车把并使用助手在模板中使用条件; 我对休息架构进行了 ajax 调用,我收到了此数据

{  
 "firstName":"Paul",
 "lastName":"Smith",
 "operationType": "Achat",
 "transactionDate":"17/08/2015",
 "operationValue":3,
 "reason":"Achat nourriture Tim Horton",
 "transactionDate":"17/08/2015"
}

我的模板

{{#each this}}
  <tr>
    <td>{{firstName}} {{lastName}}</td>
    <td>{{transactionDate}}</td>
    <td>{{reason}}</td>
    <td>{{#ifCond operationType '==' 'Achat'}}
          {{operationValue}}
        {{else}}
         0
       {{ifCond}}
    </td>
   <td>{{#ifCond operationType '==' 'Dépôt'}}
         {{operationValue}}
       {{else}}
         0
       {{ifCond}}
  </td>
  <td>{{#ifCond operationType '==' 'Retrait'}}
        {{operationValue}}
      {{else}}
        0
     {{ifCond}}
  </td>
</tr>
{{/each}}

条件寄存器

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);
    default:
        return options.inverse(this);
  }
});

当数据在模板中时出现此错误

未捕获的错误:ifCond 不匹配每个

有什么想法吗?

您的数据中没有 operationType 属性。尝试添加它。

{  
 "firstName":"Paul",
 "lastName":"Smith",
 "transactionDate":"17/08/2015",
 "operationValue":3,
 "reason":"Achat nourriture Tim Horton",
 "transactionDate":"17/08/2015",
 "operationType": "Achon" 
}

您的模板中的块未正确关闭。当你用 {{#tag}} 打开一个块时,必须有一个匹配的 {{/tag}}。在您的代码中,{{#ifCond}} 块中的 none 已正确关闭(缺少斜杠),并且顶层 {{#each}} 也未关闭(您应该 {{/each}} 在模板结束)。