Объявить объект внутри файла environment.ts - PullRequest
1 голос
/ 05 мая 2019

Любой ключ, чтобы объявить объект внутри environment.ts файла? Я попытался, как показано ниже. Но он не обнаруживает интерфейс HotelEnvironment?

export const environment = {
  production: false,

  /*hotelEnvironment:HotelEnvironment={
     apiUrl: "",
     titanUrl: "",
     hotelName: ""
  }*/

   hotelEnvironment:HotelEnvironment={
     apiUrl: "",
     titanUrl: "",
     hotelName: ""
  }
};

export interface HotelEnvironment {
    apiUrl: string;
    titanUrl: string;
    hotelName: string;
}

«HotelEnvironment» относится только к типу, но используется в качестве значения here.ts (2693)

Обновление:

Мне нужно объявить 2 или более отелей. у меня будет много отелей. Но 1 отель появится один раз в файле среды. Когда мы внедряем приложение, dev должен закомментировать другие отели и включить только 1. Моя идея заключалась в том, чтобы минимизировать ошибки, которые dev будет делать, когда закомментирует код. Т.е. если у меня есть 3 строки кода вместо одного объекта, тогда dev может быть закомментирован в 2 строки, а другие будут отсутствовать и останутся как некомментированные. Это приведет к неожиданному поведению приложения.

Ответы [ 2 ]

2 голосов
/ 05 мая 2019

Ваш export const environment объявляет простой объект json.

Внутри присвоения объекта вы не можете объявить тип атрибута с помощью :, а просто значение.

Вы можете попробовать следующий фрагмент кода, но не уверены, что он будет работать

export const environment: {production: boolean, hotelEnvironment: HotelEnvironment} = {
  production: false,
  hotelEnvironment:{
     apiUrl: "",
     titanUrl: "",
     hotelName: ""
  }
};


export interface HotelEnvironment {
    apiUrl: string;
    titanUrl: string;
    hotelName: string;
}
0 голосов
/ 05 мая 2019

Вы можете определить hotelEnvironment отдельно, а затем включить его в environment, используя сокращенное имя свойства :

const hotelEnvironment: HotelEnvironment = {
    apiUrl: "",
    titanUrl: "",
    hotelName: ""
}

export const environment = {
    production: false,
    hotelEnvironment
};

export interface HotelEnvironment {
    apiUrl: string;
    titanUrl: string;
    hotelName: string;
}

Детская площадка

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