Это противоречит самой концепции использования классов
Если вам нужно избежать прохождения конкретного UserController
для целей тестирования, вы можете использовать некоторую форму макета.
Другой вариант - использовать переменную типа any
:
const app = new App({} as any);
В зависимости от вашей конфигурации tsconfig.json
, она должна работать (очевидно, вы не сможете получить доступ ни к одной из функций / полей объекта UserController
, но конструкция App
должна работать просто отлично.
Последний вариант (я мог бы подумать, по крайней мере) использует функцию установки для UserController
:
export class App {
private _userController: UserController;
get userController(): UserController {
return this._userController;
}
set userController(ctrl: UserController) {
this._userController = ctrl;
}
}
И, таким образом, после настройки полной инфраструктуры DI вы можете использовать App.userController = SOME_USER_CONTROLLER_FROM_DI