Я использую библиотеку диаграмм ng2 для рисования кольцевой диаграммы и использую с ней ngif:
<canvas *ngIf="products?.cost >= 0)" baseChart height="50" width="50"
[data]="doughnutChartData"
chartType="doughnut"
[options]="chartOptions"
[colors]="chartColors">
</canvas>
Это дает мне странную ошибку:
Невозможно прочитать данные свойства undefined в BaseChartDirective.updateChartData (eval at (http://localhost:3000/app.js:4568:1),: 90: 23) в BaseChartDirective.ngOnChanges (eval в (http://localhost:3000/app.js:4568:1),: 26: 26) в Wrapper_BaseChartDirective.ngDoCheck (/ChartsModule/BaseChartDirective/wrapper.ngfactory.js:93: 20)
Не понимаю почему !!
Когда мое состояние такое:
‹Canvas * ngIf =" products? .Cost> 0) "baseChart height =" 50 "width =" 50 "
(то есть> вместо> = 0), он работает нормально, но мне нужно нарисовать диаграмму даже с = 0, поэтому мне нужно условие> =
Когда я делаю:
‹Canvas * ngIf =" products && (products.cost> = 0) "baseChart height =" 50 "width =" 50 "
он отлично работает и решает мою задачу. Но здесь я должен поставить два условия вместо одного. Почему он не срабатывает с этой ошибкой, когда я задаю одно условие, как описано выше? Есть ли способ заставить диаграмму работать, когда product.cost> = 0 с одним единственным условием ngif?