From 93087403d3e22d80ae8bb26c9c5e7f02eb1f822b Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Sat, 17 Jun 2017 23:54:10 -0400 Subject: [PATCH] fix yield blocks --- src/generators/dom/visitors/Component/Component.ts | 8 ++++++++ src/generators/dom/visitors/YieldTag.ts | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/generators/dom/visitors/Component/Component.ts b/src/generators/dom/visitors/Component/Component.ts index 672bb1ca26..96fdd4e31e 100644 --- a/src/generators/dom/visitors/Component/Component.ts +++ b/src/generators/dom/visitors/Component/Component.ts @@ -132,6 +132,14 @@ export default function visitComponent( `var ${yieldFragment} = ${childBlock.name}( ${params}, ${block.component} );` ); + block.builders.create.addLine( + `${yieldFragment}.create();` + ); + + block.builders.claim.addLine( + `${yieldFragment}.claim( ${state.parentNodes} );` + ); + if (childBlock.hasUpdateMethod) { block.builders.update.addLine( `${yieldFragment}.update( changed, ${params} );` diff --git a/src/generators/dom/visitors/YieldTag.ts b/src/generators/dom/visitors/YieldTag.ts index dd91d3ca3e..373414f9fc 100644 --- a/src/generators/dom/visitors/YieldTag.ts +++ b/src/generators/dom/visitors/YieldTag.ts @@ -9,7 +9,7 @@ export default function visitYieldTag( ) { const parentNode = state.parentNode || block.target; - (state.parentNode ? block.builders.create : block.builders.mount).addLine( + block.builders.mount.addLine( `if ( ${block.component}._yield ) ${block.component}._yield.mount( ${parentNode}, null );` );