Я создаю приложение, используя диаграммы Ngx от Swimlane для графического представления данных, но у меня возникает странное поведение, когда я обновляю данные с помощью кнопки обновления, которая повторно вызывает функцию GET для обновления массива данных. Я использую @ angular / flex-layout для «мозаичного» представления, но даже без его использования я все еще сталкиваюсь с этой проблемой - он просто увеличивает родительский контейнер. Я не хочу использовать жестко заданные значения px в свойстве [view]
, потому что я хочу, чтобы он работал с любым размером графика / плитки.
Я использую довольно простую вертикальную гистограмму:
<div>
<div>
<ngx-charts-bar-vertical [results]="dataArray"
[legend]="true"
[xAxis]="true"
[yAxis]="true"
[xAxisLabel]="'Date'"
[yAxisLabel]="'# tickets Raised'"
[showXAxisLabel]="true"
[showYAxisLabel]="true"></ngx-charts-bar-vertical>
</div>
<div>
<!-- Got a table here -->
</div>
</div>
Чтобы обновить свой dataArray
, я делаю:
export class DashboardComponent implements AfterViewInit {
constructor(private httpClient: HttpClient, private datePipe: DatePipe, private dataService: DataService) { }
dataArray: any[] = [];
getData(): void {
this.dataService.getSomeData<any[]>().subscribe(d => {
this.dataArray = d;
});
}
// Init
ngAfterViewInit(): void {
this.getData();
}
}
При начальной загрузке все в порядке и заполнит контейнер (где можно), но когда я нажимаю кнопку обновления, я получаю следующее поведение:
Спасибо за уделенное время.