You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
svelte/test/runtime/samples/each-block-keyed/_config.js

32 lines
775 B

export default {
data: {
todos: [
{ id: 123, description: 'implement keyed each blocks' },
{ id: 234, description: 'implement client-side hydration' }
]
},
html: `
<p>1: implement keyed each blocks</p>
<p>2: implement client-side hydration</p>
`,
test ( assert, component, target ) {
const [ p1, p2 ] = target.querySelectorAll( 'p' );
component.set({
todos: [
{ id: 234, description: 'implement client-side hydration' }
]
});
assert.htmlEqual( target.innerHTML, '<p>1: implement client-side hydration</p>' );
const [ p3 ] = target.querySelectorAll( 'p' );
assert.ok( !target.contains( p1 ), 'first <p> element should be removed' );
assert.equal( p2, p3, 'second <p> element should be retained' );
component.destroy();
}
};