html - 如何在 *ngFor 中每 3 个元素后添加一个 div

标签 html angular ngfor

我正在尝试构建一个 Angular 项目。 在我的项目中,我想显示一个书籍列表,我有一个用于单本书的 SmallBookView 组件,我想使用 ngFor 来显示许多其他书籍。/ 但是在每 3 本书之后我需要添加一个 div 来分隔这些书, 最后应该是这样的

<app-small-book-view></app-small-book-view>
<app-small-book-view></app-small-book-view>
<app-small-book-view></app-small-book-view>
<div class="clearfix"> </div>
<app-small-book-view></app-small-book-view>
<app-small-book-view></app-small-book-view>
<app-small-book-view></app-small-book-view>
<div class="clearfix"> </div>
<app-small-book-view></app-small-book-view>
<app-small-book-view></app-small-book-view>
<app-small-book-view></app-small-book-view>
<div class="clearfix"> </div>

div 分隔 ui 中的每一行书籍。 我正在尝试像这样使用 ngFor

<app-small-book-view *ngFor="let i of [1,2,3,4,5,6,7]; let _i = index">
  <div class="clearfix" *ngIf="(_i % 3) == 0"></div>
</app-small-book-view>

但这是仅在 SmallBookView 内部而不是在它们之间添加 div,我如何在组件之间添加此 div>

最佳答案

您可以使用 ng-container 对多个组件进行分组,而无需容器渲染。

<ng-container *ngFor="let i of [1,2,3,4,5,6,7]; let _i = index">
  <app-small-book-view></app-small-book-view>
  <div class="clearfix" *ngIf="(_i % 3) == 0"></div>
</ng-container>

关于html - 如何在 *ngFor 中每 3 个元素后添加一个 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51849997/

相关文章:

javascript - 在 HTML5 Canvas 上绘画时如何检查键盘状态?

angular - 是否可以使用没有表单标签的 Angular 2 表单组?

typescript - Angular2 异步管道在 ngfor 中不起作用

angularjs - 在 Angular2 中动态设置 ngModel 值

html - 扩展 HTML5 移动应用程序以获得更多文件存储

php - 浏览器滚动条无处可寻?

javascript - 如何找到 native 光标的中心并将自定义光标与其对齐?

angular - 如何将本地库导入到 Angular6 应用程序中?

angularjs - Angular 2 到 4 迁移的 package.json 更改

javascript - Angular2 ngFor 不工作