是否可以在手把模板中嵌套if/else语句

Is it possible to nest if/else statements in handlebars templates?

本文关键字:嵌套 if 语句 else 是否      更新时间:2023-09-26

我想知道是否可以使用手把嵌套多个if/else语句?到目前为止,我所有的尝试都导致了编译错误,我想做的如下:

{{if address}}
    <ul>
    <li>address.line1</li>
    <li>address.line2</li>
    {{if address.line3}}<li>address.line3</li>{{/if}}
    {{if address.line4}}<li>address.line4</li>{{/if}}
{{else}}
   No address given
{{/if}}

我在这里尝试的是可以实现的吗?它总是会导致语法分析器错误,因此我通过编写一个助手来处理吐出地址(处理javascript中line3/line4的条件):

{{if address}}
    {{formatAddress address}}
{{else}}
   No address given
{{/if}}

虽然这是可行的,但最好不必为这种简单条件的每个实例编写一个辅助函数。

我认为如果需要前面的#

试试这个。

{{#if address}}
    <ul>
        <li>address.line1</li>
        <li>address.line2</li>
        {{#if address.line3}}<li>address.line3</li>{{/if}}
        {{#if address.line4}}<li>address.line4</li>{{/if}}
    </ul>
{{else}}
   No address given
{{/if}}