diff --git a/packages/core/src/render3/di_setup.ts b/packages/core/src/render3/di_setup.ts index 0791a67c558..62395d5c453 100644 --- a/packages/core/src/render3/di_setup.ts +++ b/packages/core/src/render3/di_setup.ts @@ -8,7 +8,7 @@ import {resolveForwardRef} from '../di/forward_ref'; -import {ClassProvider, Provider} from '../di/interface/provider'; +import {ClassProvider, Provider, TypeProvider} from '../di/interface/provider'; import {isClassProvider, isTypeProvider, providerToFactory} from '../di/r3_injector'; import {assertDefined} from '../util/assert'; @@ -192,7 +192,7 @@ function registerDestroyHooksIfSupported( indexInFactory?: number) { const providerIsTypeProvider = isTypeProvider(provider); if (providerIsTypeProvider || isClassProvider(provider)) { - const prototype = ((provider as ClassProvider).useClass || provider).prototype; + const prototype = ((provider as ClassProvider).useClass || provider as TypeProvider).prototype; const ngOnDestroy = prototype.ngOnDestroy; if (ngOnDestroy) { const hooks = tView.destroyHooks || (tView.destroyHooks = []);