Нарисуйте линию между div, используя ngFor в Angular - PullRequest
0 голосов
/ 23 февраля 2020
<div class="block" *ngFor="let item of items; let i = index">
  <p>Hey</p>
</div>

У меня есть директива ngFor, как указано выше. Теперь я хочу провести прямую линию между элементами, отображаемыми в директиве. Весь пример кода, который я видел, пытается сделать это между двумя состояниями c div с использованием svg или canvas. Есть ли простой способ добиться этого?

Ответы [ 2 ]

0 голосов
/ 23 февраля 2020

Рассмотрим CSS подход.

Вы можете рисовать линии между элементами, исключая последний, используя селектор :not и :last-child.

.block:not(:last-child) {
  border-bottom: 1px solid grey;
}
<div>
  <div class="block">
    <p>Hey</p>
  </div>
  <div class="block">
    <p>Hey</p>
  </div>
  <div class="block">
    <p>Hey</p>
  </div>
</div>
0 голосов
/ 23 февраля 2020

Включите border-bottom свойство в вашем "блоке" CSS селектор.

.block {
  border-bottom: 1px solid black;
}

Рабочий пример: Stackblitz

Обновление:

Если вы не хотите добавлять его в селектор «блок», включите дополнительный селектор, как показано ниже. Кроме того, поскольку это разделитель между div компонентами, вы также можете удалить строку после последней div.

Шаблон:

<div class="block" *ngFor="let item of items; let i = index; last as isLast">
  <p>Hey</p>
  <div *ngIf="!isLast">
    <div class="divider"><div>
  </div>
</div>

CSS:

.divider {
  border-bottom: 1px solid black;
}

Рабочий пример: Stackblitz

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...