* ng для направления строки flexbox - PullRequest
1 голос
/ 14 апреля 2020

In Angular 5, *ngFor генерирует <div> элементов в направлении столбца вместо направления строки:

html:

    <div class="charts"  *ngFor="let chart of chartEntities$ | async; let i = index; trackBy: trackByFn"
          style="padding-top: 0.5em">
          <div class="item">
            <span style="background-color: rgb(127, 140, 255); height:120px;"> number {{i}}
            </span>
          </div>
    </div>

css:

    .charts{
      display: flex;
     flex-direction: row;
    }

    .item{
      display: flex;
      flex: 1
    }

Как я могу изменить его, чтобы все элементы были в одном ряду?

Спасибо

Ответы [ 2 ]

1 голос
/ 14 апреля 2020

Вы должны изменить порядок как

<div class="charts" style="padding-top: 0.5em">
      <div class="item" *ngFor="let chart of chartEntities$ | async; let i = index; trackBy: trackByFn">
        <span style="background-color: rgb(127, 140, 255); height:120px;"> number {{i}}
        </span>
      </div>
</div>

display: flex; flex-direction: row; должно быть на родительском div

1 голос
/ 14 апреля 2020

Вам нужно добавить *ngFor к вашему item, а не charts:

<div class="charts" style="padding-top: 0.5em">
  <div class="item" *ngFor="let chart of chartEntities$ | async; let i = index; trackBy: trackByFn">
    <span style="background-color: rgb(127, 140, 255); height:120px;">
      number {{i}}
    </span>
  </div>
</div>

в примечании, не используйте встроенный стиль, подобный этому. Они должны быть перемещены в компонент css файл

...