相关疑难解决方法(0)

使用逗号作为AngularJS的列表分隔符

我需要创建一个以逗号分隔的项目列表:

  <li ng-repeat="friend in friends">
      <b ng-repeat="email in friend.email">{{email}}{{$last ? '' : ', '}}</b>...
  </li>
Run Code Online (Sandbox Code Playgroud)

根据AngularJS文档,表达式中不允许使用控制流语句.这就是我{{$last ? '' : ', '}}无法工作的原因.

是否有另一种创建逗号分隔列表的方法?

编辑1
有一些比以下更简单:

<span ng-show="!$last">, </span>
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-ng-repeat

178
推荐指数
6
解决办法
12万
查看次数

如何在没有html元素的情况下使用ng-repeat

我需要使用ng-repeat(在AngularJS中)列出数组中的所有元素.

复杂的是,数组的每个元素都将转换为表的一行,两行或三行.

我无法创建有效的html,如果ng-repeat在元素上使用,因为在<tbody>和之间不允许任何类型的重复元素<tr>.

例如,如果我使用ng-repeat <span>,我会得到:

<table>
  <tbody>
    <span>
      <tr>...</tr>
    </span>
    <span>
      <tr>...</tr>
      <tr>...</tr>
      <tr>...</tr>
    </span>
    <span>
      <tr>...</tr>
      <tr>...</tr>
    </span>
  </tbody>
</table>          
Run Code Online (Sandbox Code Playgroud)

这是无效的HTML.

但我需要生成的是:

<table>
  <tbody>
    <tr>...</tr>
    <tr>...</tr>
    <tr>...</tr>
    <tr>...</tr>
    <tr>...</tr>
    <tr>...</tr>
  </tbody>
</table>          
Run Code Online (Sandbox Code Playgroud)

其中第一行由第一个数组元素生成,接下来的三个由第二个数据生成,第五个和第六个由最后一个数组元素生成.

如何在渲染过程中使用ng-repeat以使其绑定的html元素"消失"?

或者还有另一个解决方案吗?


澄清:生成的结构应如下所示.每个数组元素可以生成1-3行的表.理想情况下,答案应该支持每个数组元素0-n行.

<table>
  <tbody>
    <!-- array element 0 -->
    <tr>
      <td>One row item</td>
    </tr>
    <!-- array element 1 -->
    <tr>
      <td>Three row item</td>
    </tr>
    <tr>
      <td>Some product details</td>
    </tr>
    <tr>
      <td>Customer ratings</td>
    </tr>
    <!-- array element …
Run Code Online (Sandbox Code Playgroud)

angularjs

139
推荐指数
5
解决办法
10万
查看次数

AngularJS ng-repeat,逗号在最后一项之前用'和'分隔

我有一个项目清单......

$scope.Users =[{
    UserName: ''
}];
Run Code Online (Sandbox Code Playgroud)

在我看来,我想列出这样的假设我只有4个项目 $scope:Users

Username1, Username2, Username3 and Username4

<span data-ng-repeat="user in Users">{{user.Username}}</span>{{$last ? '' : ', '}}
Run Code Online (Sandbox Code Playgroud)

上面的表达式基本上会在每个项目后添加逗号并且工作正常.

我的问题是如何and在最后一个项目之前添加一个关键字,所以它会像:

Username1, Username2, Username3 and Username4
Run Code Online (Sandbox Code Playgroud)

代替:

Username1, Username2, Username3, Username4
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-ng-repeat

37
推荐指数
5
解决办法
4万
查看次数

标签 统计

angularjs ×3

angularjs-ng-repeat ×2