AngularJS等效于Angular ng-container

前端之家收集整理的这篇文章主要介绍了AngularJS等效于Angular ng-container前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这是一个AngularJS等效于Angular ng-container吗?

或者我应该用transclude指令自己创建一些东西?

用例示例:

>具有隔行对,三元组等的表格:

<table><tr>
  <ng-container ng-repeat="item in items">
    <td>{{ item.a }}</td>
    <td>{{ item.b }}</td>
  </ng-container>
</tr></table>

在DOM树中不应该存在额外的级别,而是< td> s应该是< tr>的直接子级.元件.
> HTML列表存在类似的问题,尤其是定义列表,其中< dt> /< dd>元素应该是< dl>的直接子元素.而它们通常成对存在.
>具有显示的数据表格式排列:网格:

<div style="display: grid; grid-template-columns: auto auto">
    <ng-container ng-repeat="item in items">
        <div>{{ item.a }}</div>
        <div>{{ item.b }}</div>
    </ng-container>
</div>

这种情况甚至更成问题,因为DOM树中存在的容器元素导致整个布局中断,因为它被渲染为单元而不是其子元素.

在您提到的情况下,您可以分别使用ng-repeat-start和ng-repeat-end对:

>具有隔行对,三元组等的表格:

<table><tr>
  <td ng-repeat-start="item in items">{{ item.a }}</td>
  <td ng-repeat-end>{{ item.b }}</td>
</tr></table>

> HTML列表:

<dl>
  <dt ng-repeat-start="item in items">{{ item.term }}</dt>
  <dd ng-repeat-end>{{ item.definition }}</dd>
</dl>

>具有显示的数据表格式排列:网格:

<div style="display: grid; grid-template-columns: auto auto">
  <div ng-repeat-start="item in items">{{ item.a }}</div>
  <div>{{ item.b }}</div>
  <div ng-repeat-end>{{ item.c }}</div>
</div>

您可以在API参考:https://docs.angularjs.org/api/ng/directive/ngRepeat#special-repeat-start-and-end-points中阅读此内容

猜你在找的Angularjs相关文章