fix(core): call ngOnDestroy for tree-shakeable providers (#28943)
Prior to this change, any provider that was independently resolved using its InjectableDef would not be considered when destroying the module it was requested from. This commit provides a fix for this issue by storing the resolved provider in the module's list of provider definitions. Fixes #28927 PR Close #28943
This commit is contained in:
@ -109,7 +109,7 @@ export function resolveNgModuleDep(
|
||||
} else if (
|
||||
(injectableDef = getInjectableDef(depDef.token)) && targetsModule(data, injectableDef)) {
|
||||
const index = data._providers.length;
|
||||
data._def.providersByKey[depDef.tokenKey] = {
|
||||
data._def.providers[index] = data._def.providersByKey[depDef.tokenKey] = {
|
||||
flags: NodeFlags.TypeFactoryProvider | NodeFlags.LazyProvider,
|
||||
value: injectableDef.factory,
|
||||
deps: [], index,
|
||||
|
Reference in New Issue
Block a user