Да.
|
Цитата:
newConstructor.prototype = Object.create(Target.prototype); newConstructor.prototype.constructor = newConstructor;быть может, это и подразумевалось, только автор опечатался |
Всё равно декоратор не работает нормально. Если делаю так, то всё ОК
function decorator(target) { return target } @decorator class MyClass { public constructor( @Inject(HttpClient) protected http: HttpClient) {} } Но как только вместо target возвращаю в декораторе новый конструктор, DI перестает работать (сервисы не инжектятся) :( P.S. Сделал планк https://embed.plnkr.co/opnY3y/ |
Читал документацию по декораторам и смотрел как они в ES транспилятся - ничего сложного)
На stackoverflow ответили: https://stackoverflow.com/questions/...46606#45646606 Тоже пробовал что-то подобное, но оказывается нужно было newCtor делать именованной, а в конце все-таки использовать newConstructor.prototype = Object.create(target.prototype), а не newConstructor.prototype = target.prototype; Видимо, Ангуляр как-то по-особенному свои зависимости инжектит. Вот в его исходниках так и не разобрался - слишком муторный код |
Часовой пояс GMT +3, время: 20:31. |