fix(ivy): inject attributes for directives on ng-template / ng-container (#25697)

PR Close #25697
This commit is contained in:
Pawel Kozlowski
2018-08-28 14:13:32 +02:00
committed by Matias Niemelä
parent 0fe708ff82
commit 0386c44acc
2 changed files with 68 additions and 9 deletions

View File

@ -268,12 +268,12 @@ const componentFactoryResolver: ComponentFactoryResolver = new ComponentFactoryR
* @experimental
*/
export function injectAttribute(attrNameToInject: string): string|undefined {
ngDevMode && assertPreviousIsParent();
const lElement = getPreviousOrParentNode() as LElementNode;
ngDevMode && assertNodeType(lElement, TNodeType.Element);
const tElement = lElement.tNode;
ngDevMode && assertDefined(tElement, 'expecting tNode');
const attrs = tElement.attrs;
const lNode = getPreviousOrParentNode();
ngDevMode && assertNodeOfPossibleTypes(
lNode, TNodeType.Container, TNodeType.Element, TNodeType.ElementContainer);
const tNode = lNode.tNode;
ngDevMode && assertDefined(tNode, 'expecting tNode');
const attrs = tNode.attrs;
if (attrs) {
for (let i = 0; i < attrs.length; i = i + 2) {
const attrName = attrs[i];