Merge pull request #1630 from sveltejs/gh-1621

register dependencies of dynamic component expressions
pull/1636/head
Rich Harris 6 years ago committed by GitHub
commit 7c51094012
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -78,6 +78,10 @@ export default class Component extends Node {
) {
this.cannotUseInnerHTML();
if (this.expression) {
block.addDependencies(this.expression.dependencies);
}
this.attributes.forEach(attr => {
block.addDependencies(attr.dependencies);
});

@ -0,0 +1,17 @@
export default {
html: `
<p>Foo</p>
`,
test(assert, component, target) {
const { Bar } = component.get();
component.set({
x: Bar
});
assert.htmlEqual(target.innerHTML, `
<p>Bar</p>
`);
}
};

@ -0,0 +1,18 @@
{#if x}
<svelte:component this={x}/>
{/if}
<script>
import Foo from './Foo.html';
import Bar from './Bar.html';
export default {
data() {
return {
x: Foo,
Foo,
Bar
};
}
};
</script>
Loading…
Cancel
Save