В большинстве случаев вы захотите использовать {static: false} в вашем ViewChild. Установка этого параметра гарантирует, что совпадения запросов, которые зависят от разрешения привязки (например, структурные директивы * ngIf и т. Д.), Будут найдены.
Поэтому ответ будет следующим:
*@ViewChild('chart', {static: false})*
static: false будет стандартным вариантом отката в Angular 9.
Опция {static: true} была введена для поддержки создания встроенных представлений на лету. Когда вы динамически создаете представление и хотите получить доступ к TemplateRef, вы не сможете сделать это в ngAfterViewInit, так как это приведет к ошибке ExpressionHasChangedAfterChecked. Установка статического флага в true создаст ваше представление в ngOnInit.