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 );` );