angular-cli: условный импорт с использованием переменной окружения
Есть ли способ условно изменить импорт на основе переменной среды в [email protected]? Я пытаюсь сделать это так, чтобы не требовалось изменений кода при импорте служб в клиентский код, но при необходимости я могу указать флаг сборки для замены в фиктивных сервисах.
Есть шаблон, который я пытался использовать сэта почта:
Структура файла:
MyService
MyServiceMock.ts
MyServiceReal.ts
index.ts
И в вашем index.ts вы можете иметь следующее:
import { environment} from '../environments/environment';
export const MyService = environment.mock ?
require('./MyServiceMock').MyServiceMock:
require('./MyServiceReal').MyServiceReal;
И в коде вашего клиента импортируйте MyService:
import MyService from './myservice/index';
Страница загружается, и я вижу, как зависимость вводится при пошаговом выполнении кода, однако есть ошибки компиляции (которые я считаю ошибками TypeScript) вдоль строкCannot find name 'MyService'
.