Merge pull request #1280 from sveltejs/dynamic-component-mount-ref

when mounting dynamic components, set ref if required
pull/1283/head
Rich Harris 8 years ago committed by GitHub
commit 48643ca3ea
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -307,9 +307,12 @@ export default class Component extends Node {
);
}
block.builders.mount.addLine(
`if (${name}) ${name}._mount(${parentNode || '#target'}, ${parentNode ? 'null' : 'anchor'});`
);
block.builders.mount.addBlock(deindent`
if (${name}) {
${name}._mount(${parentNode || '#target'}, ${parentNode ? 'null' : 'anchor'});
${ref && `#component.refs.${ref.name} = ${name};`}
}
`);
const updateMountNode = this.getUpdateMountNode(anchor);

@ -0,0 +1,7 @@
export default {
html: `Foo`,
test(assert, component) {
assert.ok(component.refs.test);
}
};

@ -0,0 +1,11 @@
<:Component {foo} ref:test/>
<script>
import Foo from './Foo.html';
export default {
data() {
return { foo: Foo };
}
};
</script>
Loading…
Cancel
Save