【问题标题】:treating the last element of a list differently in handlebars #each block [duplicate]在把手中以不同方式处理列表的最后一个元素#each块[重复]
【发布时间】:2013-01-19 17:42:59
【问题描述】:

可能重复:
How do I add a separator between elements in an {{#each}} loop except after the last element?

作为一个最简单的例子,假设我有一个名称列表,我希望它们之间用逗号显示。我可以的

{{#each name in names }} {{name}}, {{/each}}

然后会产生最后一个

John, Paul, George, Ringo,

最后一个不想要的逗号。我可以想办法通过在我的控制器函数中添加逗号来处理这个问题,但这似乎很尴尬,并且有点违反 MVC 分离。有没有办法仅在车把中识别您何时处理最后一个元素并进行相应调整?

【问题讨论】:

标签: javascript ember.js handlebars.js


【解决方案1】:

Javascript 有一个 .join 函数,您很可能可以使用它:

['John', 'Paul', 'George', 'Ringo'].join(', '); //John, Paul, George, Ringo

【讨论】:

    【解决方案2】:

    另一种方式,以防您无法使用 Join。

    var arr = ['John', 'Paul', 'George', 'Ringo'];
    var names="";
    $.each(arr, function(i,val) { 
    
    if (i < arr.length-1)
      names += val + ","
    else
     names += val
     });
    alert (names);
    

    【讨论】:

      猜你喜欢
      • 2011-01-26
      • 2011-01-02
      • 1970-01-01
      • 2015-04-21
      • 2016-01-10
      • 1970-01-01
      • 2022-01-01
      • 1970-01-01
      • 2011-04-29
      相关资源
      最近更新 更多