【问题标题】:Angular JS repeat function 'peek' if there is another item in the array to be displayed如果数组中有另一个要显示的项目,Angular JS重复函数'peek'
【发布时间】:2016-08-22 01:47:05
【问题描述】:

当我使用 ng-repeat 时,我有一个逗号来将信息(例如名称)分隔在一个很好的行中,但是在 ng-repeat 函数中使用逗号时,它也会在末尾添加一个逗号,这是不正确的。

我的想法是必须有一种方法来检查是否还有其他项目要显示。如果有则显示逗号,如果没有则不显示逗号。

我的代码示例如下:

<tbody class="offerInformation">
    <tr><td><b>Test:</b></td><td>Start/End</td></tr>
    <tr><td><b>Test:</b></td><td><span ng-repeat="testing in results.names"><span ng-bind="testing"></span> , </span></td></tr>
    <tr><td><b>Test:</b></td><td>Test</td></tr>
    <tr><td><b>Test:</b></td><td></td></tr>
</tbody>

如您所见,第二个表格行有一个逗号,用于显示数组中的每个重复项。最后如果有 3 个人输出如下:

杰森,马克,泰勒,

它留下了一个不正确的额外逗号。最后一项后不应有逗号。我的假设是使用ng-if 以某种方式检查是否有下一个项目,如果有我们显示逗号,但如果没有那么我们不显示逗号。

【问题讨论】:

    标签: html angularjs angularjs-ng-repeat angular-ng-if


    【解决方案1】:

    ng-repeat 指令几乎没有内置的特殊属性来获取上下文信息。 $last 是您在这种情况下需要的其中之一。

    <span ng-repeat="testing in names">
          {{testing}}<span ng-if="!$last"> , </span>
    </span>
    

    有关其他属性,请参阅 AngularJS ngRepeat 文档

    示例代码here

    【讨论】:

    • 非常感谢,我不知道指令可以内置您可以在内部调用的变量。我会对此进行更多研究!
    猜你喜欢
    • 2020-10-22
    • 2015-09-25
    • 1970-01-01
    • 2021-11-16
    • 2021-05-31
    • 1970-01-01
    • 2020-02-15
    • 2020-11-02
    • 1970-01-01
    相关资源
    最近更新 更多