Статус клиента не определен

#html #angular #typescript

#HTML #angular #машинописный текст

Вопрос:

У меня есть машинописный код с простой логикой if else

 endDate: String = '';
customerStatus: String;
this.endDate = this.sampleData.customerStartDate;
if (this.endDate == null) {
this.customerStatus = 'Active';
} else {
this.customerStatus = 'In Active';
}
  

HTML-код:

  <div class="col-md-3">
   <div class="card-counter info">
   <i class="fa fa-refresh"></i>
   <span class="count-numbers">
   <h4 class="margin">{{customerStatus}}</h4></span>
   <span class="count-name"> Customer Status</span>
   </div>
   </div>
   </div>
  

Если я отлаживаю код, то в EndDate я вижу значение, но в CustomerStatus я получаю значение Undefined, и в результате в HTML ничего не отображается.
Логика заключается в том, что если у клиента есть дата окончания, то клиент активен, или же клиент активен
Что я делаю не так?

Комментарии:

1. Как вы получаете ваши SampleData? Из серверной части или из чего-либо еще?

2. Да, из серверной части. Я нажимаю на API и извлекаю оттуда

Ответ №1:

Вы не проверили null наличие sampleData объекта перед использованием customerStartDate свойства.

Поскольку строка кода this.sampleData.customerStartDate выдает исключение, следующая строка кода не может быть выполнена.

Отредактируйте эту строку кода, это сработало.

 this.endDate = this.sampleData != null ? this.sampleData.customerStartDate : null;
  

https://stackblitz.com/edit/angular-wefvju

Комментарии:

1. Спасибо, это сработало. Можете ли вы объяснить мне, что я делал не так и как добавление этой строки решило проблему