锚点之间的AngularJS分隔符

时间:2014-11-05 16:37:08

标签: javascript html css angularjs angularjs-ng-repeat

我试图获取字符串数组并将其输出为html锚点(可点击标签)的内联列表。这是我目前的代码。

<div class="tags">Tags: 
    <a ng-click="searchByTag(tag)" ng-repeat="tag in obj.Tags">
        {{tag}}{{$last ? '' : ', '}}
    </a>
</div>

这可以,但逗号包含在html锚点中。我如何将分隔符放在锚之外?

解决方法

下面的代码将给出所需的布局,但要求每个锚都包含在一个范围内。如果可能,我想避免这种情况。

<span ng-repeat="tag in obj.Tags">
    <a ng-click="searchByTag(tag)">{{tag}}</a>{{$last ? '' : ', '}}
</span>

3 个答案:

答案 0 :(得分:1)

查找ng-repeat-start和ng-repeat-stop:link

<div class="tags">Tags: 
        <a ng-click="searchByTag(tag)" ng-repeat-start="tag in obj.Tags">
            {{tag}}
        </a>
       <span ng-repeat-stop>{{$last ? '' : ', '}}</span>
</div>

答案 1 :(得分:0)

您可以使用comment指令。

<div class="tags">Tags: 
    <!-- directive: ng-repeat tag in obj.Tags -->
    <a ng-click="searchByTag(tag)">
        {{tag}}
    </a>
    {{$last ? '' : ', '}}
    <!-- /ng-repeat -->
</div>

答案 2 :(得分:0)

我可能迟到了派对,OP可能已经知道了,但您可以将分隔符添加到<span>并在ng-if上设置<span>以便它如果我们在最后一个元素上,则会隐藏:

<div class="tags">Tags: 
  <a ng-click="searchByTag(tag)" ng-repeat-start="tag in obj.Tags">
    {{tag}}
  </a>
  <span ng-repeat-end ng-hide="$last">{{', '}}</span>
</div>