как исправить это условие всегда будет возвращать false в Angular - PullRequest
1 голос
/ 29 мая 2020

кто-нибудь знает, почему я получаю сообщение «Это условие всегда будет возвращать false, поскольку типы typeof ChartType» и «ChartType» не пересекаются, когда я когда-либо пытался проверить, равен ли charTypeEnum ChartType.text

Chart-Design.ts

import { ChartType, ChartData, TextData } from 'src/app/mam-chart/models';

export class ChartDesignComponent implements OnInit {
  chartTypeEnum = ChartType;
}

  setupTypes() {
// I got error over here
    if (this.chartTypeEnum == ChartType.text)  { 
      this.cardJsonV2 = JSON.stringify(this.chartData);
    }
}

mam-model.ts

export enum ChartType {
    chart = 1,
    text,
    grid
}

Chart-Design. html

            <mat-form-field appearance="fill">
                <mat-label>Text</mat-label>
                <input matInput [ngModel]="chartData?.textData?.text" />
            </mat-form-field >

Ответы [ 2 ]

3 голосов
/ 29 мая 2020

Попробуйте заменить chartTypeEnum = ChartType на chartTypeEnum: ChartType.

На chartTypeEnum = ChartType тип ChartType (ошибочно?) Назначен переменной chartTypeEnum вместо определения типа.

1 голос
/ 29 мая 2020

Использовать приведение типов

 if (String(this.chartTypeEnum) === ChartType.text))  { 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...