Присвойте значения вложенному свойству - PullRequest
0 голосов
/ 28 мая 2020

У меня есть файлы конфигурации, в которых я создал вложенные свойства, как показано ниже

export class Config {
     public msalConfig: {
        auth: {
          authority: string;
          clientId: string;
          validateAuthority: boolean;
          redirectUri: string;
          postLogoutRedirectUri: string;
          navigateToLoginRequestUrl: boolean;
        },
        cache: {};
        scopes: {};
        system: {};
      };
}

Из файла ts я пытаюсь присвоить значения вложенным свойствам, но это вызывает ошибку

public Settings: Config = null;
this.Settings.msalConfig.auth.redirectUri = window.location.href;

Можете ли вы сказать мне, как присвоить значения вложенным свойствам.

1 Ответ

0 голосов
/ 28 мая 2020

Вы не можете получить доступ к внутреннему свойству переменной Settings, потому что оно пустое, поэтому msalConfig в нем еще не существует. Сначала вам нужно создать экземпляр Settings как объект, а затем вы можете установить msalConfig на некоторое значение.

Назначьте Settings новому экземпляру Config

private Settings: Config = new Config();

затем присвойте значение msalConfig, как это (например, в конструкторе)

this.Settings.msalConfig = {
    auth: {
        authority: null,
        clientId: null,
        validateAuthority: false,
        redirectUri: null,
        postLogoutRedirectUri: null,
        navigateToLoginRequestUrl: false
      },
      cache: {},
      scopes: {},
      system: {}
    };

теперь вы можете присвоить значение redirectUri, как вы хотели

this.Settings.msalConfig.auth.redirectUri = window.location.href;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...