这是我的问题。很多在角度上使用chartjs的例子都假设
data is already there
,然后他们把它
ngAfterViewInit
。
然而,我不知道如何满足我的要求:
-
我需要在构造函数中加载数据
-
加载数据时,我设置了一个布尔属性来显示不确定的
mat-spinner
-
当然,加载数据确实是不确定的,而且我不知道它何时加载(可能承诺土地)。
-
加载数据时,我需要使用chartjs api将数据绘制到画布中
-
如果在构造函数中执行此操作,则会遇到
document.getElementById('canvasId')
,因为它尚未呈现。
-
如果我在constructor中加载数据并希望在
ngafterviewinit
,然后我不知道何时加载数据,因为它是不确定的,并且我遇到了数据对象属性的空引用。
-
如果我在
ngafterviewinit
,然后安格尔抱怨说
ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: 'ngIf: undefined'. Current value: 'ngIf: true'
. 此错误与
mat-spinner *ngIf='progress'
在如何协调这些要求上,我陷入了困境。有什么帮助吗?