Added transtition_in for else in each block, and test

pull/4987/head
khang8591 5 years ago
parent 0f5fe6552d
commit a0f89e8ce2

@ -305,6 +305,7 @@ export default class EachBlockWrapper extends Wrapper {
} else if (!${this.vars.data_length}) { } else if (!${this.vars.data_length}) {
${each_block_else} = ${this.else.block.name}(#ctx); ${each_block_else} = ${this.else.block.name}(#ctx);
${each_block_else}.c(); ${each_block_else}.c();
@transition_in(${each_block_else}, 1);
${each_block_else}.m(${update_mount_node}, ${update_anchor_node}); ${each_block_else}.m(${update_mount_node}, ${update_anchor_node});
} else if (${each_block_else}) { } else if (${each_block_else}) {
${each_block_else}.d(1); ${each_block_else}.d(1);
@ -321,6 +322,7 @@ export default class EachBlockWrapper extends Wrapper {
} else if (!${each_block_else}) { } else if (!${each_block_else}) {
${each_block_else} = ${this.else.block.name}(#ctx); ${each_block_else} = ${this.else.block.name}(#ctx);
${each_block_else}.c(); ${each_block_else}.c();
@transition_in(${each_block_else}, 1);
${each_block_else}.m(${update_mount_node}, ${update_anchor_node}); ${each_block_else}.m(${update_mount_node}, ${update_anchor_node});
} }
`); `);

@ -0,0 +1,11 @@
export default {
test({ component, target, assert, raf }) {
assert.htmlEqual(target.innerHTML, 'a');
component.arr = [];
assert.htmlEqual(target.innerHTML, '<div>empty</div>');
raf.tick(50);
assert.equal(target.querySelector("div").foo, 0.5);
},
};

@ -0,0 +1,11 @@
<script>
export let arr = ['a'];
function foo(node, params){
return { tick(t){ node.foo = t; }, duration: 100 }
}
</script>
{#each arr as v}
{v}
{:else}
<div transition:foo>empty</div>
{/each}
Loading…
Cancel
Save