Я выполняю вызов API, и этот вызов API успешно возвращает данные, которые печатаются в console.log
Однако, когда я использую эту же переменную в шаблоне, она сохраняет значение по умолчанию, которое в этомcase - пустой массив
Я использую для этого общие имена.
import { Component, OnInit } from '@angular/core';
import { DataService } from '@app/core/api/mainmenu/data.service';
import { MenuBlockModel } from '@app/core/models/menu-block.model';
@Component({
selector: 'app-mainmenu',
templateUrl: './mainmenu.component.html',
styleUrls: ['./mainmenu.component.scss'],
changeDetection: ChangeDetectionStrategy.OnPush,
})
export class MainmenuComponent implements OnInit {
public menuBlock: MenuBlockModel = [];
public dummyString: string = 'This works';
constructor(
public DataService: DataService,
) {
}
public ngOnInit(): void {
this.DataService.getData$()
.subscribe(result => {
this.menuBlock = result.menuBlocks;
// Console log displays results
console.log('this.menuBlock', this.menuBlock);
});
}
}
И переменная, которая не отображается:
<html>
{{menuBlock | json}} // []
{{menuBlock}} // nothing displayed
{{dummyString}} // 'This works'
</html>