0
0
mirror of https://github.com/sveltejs/svelte.git synced 2024-12-01 17:30:59 +01:00

Merge pull request #668 from sveltejs/gh-667

pass params to get_block
This commit is contained in:
Rich Harris 2017-06-23 17:07:47 -04:00 committed by GitHub
commit 73715b2ba6
3 changed files with 60 additions and 2 deletions

View File

@ -395,7 +395,7 @@ function compoundWithOutros(
if (dynamic) {
block.builders.update.addBlock(deindent`
var ${previous_block_index} = ${current_block_index};
${current_block_index} = ${get_block}( state );
${current_block_index} = ${get_block}( ${params} );
if ( ${current_block_index} === ${previous_block_index} ) {
${if_current_block_index}${if_blocks}[ ${current_block_index} ].update( changed, ${params} );
} else {
@ -405,7 +405,7 @@ function compoundWithOutros(
} else {
block.builders.update.addBlock(deindent`
var ${previous_block_index} = ${current_block_index};
${current_block_index} = ${get_block}( state );
${current_block_index} = ${get_block}( ${params} );
if ( ${current_block_index} !== ${previous_block_index} ) {
${changeBlock}
}

View File

@ -0,0 +1,32 @@
export default {
data: {
foo: false,
threshold: 5
},
html: `
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
`,
test ( assert, component, target, window, raf ) {
const divs = target.querySelectorAll('div');
raf.tick(100);
component.set({ threshold: 4 });
raf.tick( 200 );
assert.htmlEqual(target.innerHTML, `
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
`);
component.destroy();
}
};

View File

@ -0,0 +1,26 @@
{{#each [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] as number}}
{{#if foo}}
{{#if threshold >= number}}
<div transition:foo>{{number}}</div>
{{/if}}
{{else}}
{{#if threshold >= number}}
<div transition:foo>{{number}}</div>
{{/if}}
{{/if}}
{{/each}}
<script>
export default {
transitions: {
foo: function ( node ) {
return {
duration: 100,
tick: t => {
node.foo = t;
}
};
}
}
};
</script>