Преобразовать имя переменной в строку в Angular Typescript - PullRequest
0 голосов
/ 25 января 2020

Как мне преобразовать имена переменных в строки в Angular 8?

Мы используем NgOnChanges с SimpleChanges и предпочитаем не ссылаться на имена переменных жестко закодированной строкой, а строго типизированной (строка -конвертировать) функцию. Возможно ли это в Typescript?

ngOnChanges(changes: SimpleChanges) {
    if (changes['sharedFormInput'] && this.sharedFormInput){
      this.editSharedForm.patchValue(this.sharedFormInput);
      this.addressChangeReasonSelectedValue = this.sharedFormInput.addressChangeReason;
      this.addressSourceSelectedValue = this.sharedFormInput.addressSource;
      this.addressPurposeOfUseSelectedValue = this.sharedFormInput.addressPurpose;
    }
    if (changes['markFormTouchedFlag']) {
      this.markFormTouched();
    }
  }

1 Ответ

0 голосов
/ 25 января 2020

Используйте следующую функцию

Функция:

export function nameof<T>(key: keyof T, instance?: T): keyof T {
    return key;
}

Пример использования:

nameof<SampleComponent>('sharedFormInput')

Ресурс: https://www.meziantou.net/typescript-nameof-operator-equivalent.htm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...