mirror of https://github.com/sveltejs/svelte
parent
1f9efeac54
commit
6d2ab63112
@ -0,0 +1,29 @@
|
||||
export default {
|
||||
html: `
|
||||
<p>0</p>
|
||||
<p>bar: 1,2,3,1,1,2,3,2, num: 1</p>
|
||||
<p>bar: 0,2,4,1,0,2,4,2, num: 2</p>
|
||||
`,
|
||||
async test({ component, target, assert }) {
|
||||
assert.htmlEqual(
|
||||
target.innerHTML,
|
||||
`
|
||||
<p>0</p>
|
||||
<p>bar: 1,2,3,1,1,2,3,2, num: 1</p>
|
||||
<p>bar: 0,2,4,1,0,2,4,2, num: 2</p>
|
||||
`
|
||||
);
|
||||
|
||||
component.nums = [1, 2, 3];
|
||||
|
||||
assert.htmlEqual(
|
||||
target.innerHTML,
|
||||
`
|
||||
<p>0</p>
|
||||
<p>bar: 1,2,3,1,1,2,3,2,1,2,3,3, num: 1</p>
|
||||
<p>bar: 0,2,4,1,0,2,4,2,0,2,4,3, num: 2</p>
|
||||
<p>bar: -100,0,100,1,-100,0,100,2,-100,0,100,3, num: 3</p>
|
||||
`
|
||||
);
|
||||
}
|
||||
};
|
||||
@ -0,0 +1,26 @@
|
||||
<script>
|
||||
export let nums = [1, 2];
|
||||
let foos = [
|
||||
{
|
||||
nums: [1, 2, 3],
|
||||
},
|
||||
{
|
||||
nums: [0, 2, 4],
|
||||
},
|
||||
{
|
||||
nums: [-100, 0, 100],
|
||||
},
|
||||
];
|
||||
let foo = 0;
|
||||
</script>
|
||||
|
||||
<p>{foo}</p>
|
||||
{#each nums as num, index}
|
||||
{@const bar = nums.map((num) => {
|
||||
const func = (foos, num) => {
|
||||
return [...foos.map((foo) => foo), num];
|
||||
}
|
||||
return func(foos[index].nums, num);
|
||||
})}
|
||||
<p>bar: {bar}, num: {num}</p>
|
||||
{/each}
|
||||
@ -0,0 +1,29 @@
|
||||
export default {
|
||||
html: `
|
||||
<p>bar: 1,2,3,0,2,4,-100,0,100, num: 1</p>
|
||||
<p>bar: 1,2,3,0,2,4,-100,0,100, num: 2</p>
|
||||
<p>bar: 1,2,3,0,2,4,-100,0,100, num: 3</p>
|
||||
`,
|
||||
async test({ component, target, assert }) {
|
||||
assert.htmlEqual(
|
||||
target.innerHTML,
|
||||
`
|
||||
<p>bar: 1,2,3,0,2,4,-100,0,100, num: 1</p>
|
||||
<p>bar: 1,2,3,0,2,4,-100,0,100, num: 2</p>
|
||||
<p>bar: 1,2,3,0,2,4,-100,0,100, num: 3</p>
|
||||
`
|
||||
);
|
||||
|
||||
component.nums = [1, 2, 3, 4];
|
||||
|
||||
assert.htmlEqual(
|
||||
target.innerHTML,
|
||||
`
|
||||
<p>bar: 1,2,3,0,2,4,-100,0,100, num: 1</p>
|
||||
<p>bar: 1,2,3,0,2,4,-100,0,100, num: 2</p>
|
||||
<p>bar: 1,2,3,0,2,4,-100,0,100, num: 3</p>
|
||||
<p>bar: 1,2,3,0,2,4,-100,0,100, num: 4</p>
|
||||
`
|
||||
);
|
||||
}
|
||||
};
|
||||
@ -0,0 +1,19 @@
|
||||
<script>
|
||||
export let nums = [1, 2, 3];
|
||||
let foos = [
|
||||
{
|
||||
nums: [1, 2, 3],
|
||||
},
|
||||
{
|
||||
nums: [0, 2, 4],
|
||||
},
|
||||
{
|
||||
nums: [-100, 0, 100],
|
||||
},
|
||||
];
|
||||
</script>
|
||||
|
||||
{#each nums as num}
|
||||
{@const bar = foos.map((foos) => foos.nums)}
|
||||
<p>bar: {bar}, num: {num}</p>
|
||||
{/each}
|
||||
@ -0,0 +1,32 @@
|
||||
export default {
|
||||
html: `
|
||||
<p>foo: dummy-foo, num: dummy-num</p>
|
||||
<p>bar: 1,2,3,2,, num: 1</p>
|
||||
<p>bar: 1,2,3,2,, num: 2</p>
|
||||
<p>bar: 1,2,3,2,, num: 3</p>
|
||||
`,
|
||||
async test({ component, target, assert }) {
|
||||
assert.htmlEqual(
|
||||
target.innerHTML,
|
||||
`
|
||||
<p>foo: dummy-foo, num: dummy-num</p>
|
||||
<p>bar: 1,2,3,2,, num: 1</p>
|
||||
<p>bar: 1,2,3,2,, num: 2</p>
|
||||
<p>bar: 1,2,3,2,, num: 3</p>
|
||||
`
|
||||
);
|
||||
|
||||
component.nums = [1, 2, 3, 4];
|
||||
|
||||
assert.htmlEqual(
|
||||
target.innerHTML,
|
||||
`
|
||||
<p>foo: dummy-foo, num: dummy-num</p>
|
||||
<p>bar: 1,2,3,2,4,, num: 1</p>
|
||||
<p>bar: 1,2,3,2,4,, num: 2</p>
|
||||
<p>bar: 1,2,3,2,4,, num: 3</p>
|
||||
<p>bar: 1,2,3,2,4,, num: 4</p>
|
||||
`
|
||||
);
|
||||
}
|
||||
};
|
||||
@ -0,0 +1,33 @@
|
||||
<script>
|
||||
export let nums = [1, 2, 3];
|
||||
let foos = [
|
||||
{
|
||||
nums: [1, 2, 3],
|
||||
},
|
||||
{
|
||||
nums: [0, 2, 4],
|
||||
},
|
||||
{
|
||||
nums: [-100, 0, 100],
|
||||
},
|
||||
];
|
||||
let default_nums = [-1];
|
||||
let foo = "dummy-foo";
|
||||
let num = "dummy-num";
|
||||
</script>
|
||||
|
||||
<p>foo: {foo}, num: {num}</p>
|
||||
{#each nums as num}
|
||||
{@const bar = foos.map((foo) =>
|
||||
foo.nums.filter((num) => {
|
||||
if (Object.keys($$slots).length) {
|
||||
return false;
|
||||
} else if (Object.keys(foo).length) {
|
||||
return nums.includes(num) || default_nums.includes(num);
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}) || num
|
||||
)}
|
||||
<p>bar: {bar}, num: {num}</p>
|
||||
{/each}
|
||||
@ -0,0 +1,29 @@
|
||||
export default {
|
||||
html: `
|
||||
<p>0</p>
|
||||
<p>bar: 1,2,3,1,1,2,3,2, num: 1</p>
|
||||
<p>bar: 0,2,4,1,0,2,4,2, num: 2</p>
|
||||
`,
|
||||
async test({ component, target, assert }) {
|
||||
assert.htmlEqual(
|
||||
target.innerHTML,
|
||||
`
|
||||
<p>0</p>
|
||||
<p>bar: 1,2,3,1,1,2,3,2, num: 1</p>
|
||||
<p>bar: 0,2,4,1,0,2,4,2, num: 2</p>
|
||||
`
|
||||
);
|
||||
|
||||
component.nums = [1, 2, 3];
|
||||
|
||||
assert.htmlEqual(
|
||||
target.innerHTML,
|
||||
`
|
||||
<p>0</p>
|
||||
<p>bar: 1,2,3,1,1,2,3,2,1,2,3,3, num: 1</p>
|
||||
<p>bar: 0,2,4,1,0,2,4,2,0,2,4,3, num: 2</p>
|
||||
<p>bar: -100,0,100,1,-100,0,100,2,-100,0,100,3, num: 3</p>
|
||||
`
|
||||
);
|
||||
}
|
||||
};
|
||||
@ -0,0 +1,25 @@
|
||||
<script>
|
||||
export let nums = [1, 2];
|
||||
let foos = [
|
||||
{
|
||||
nums: [1, 2, 3],
|
||||
},
|
||||
{
|
||||
nums: [0, 2, 4],
|
||||
},
|
||||
{
|
||||
nums: [-100, 0, 100],
|
||||
},
|
||||
];
|
||||
let foo = 0;
|
||||
</script>
|
||||
|
||||
<p>{foo}</p>
|
||||
{#each nums as num, index}
|
||||
{@const bar = nums.map((num) => {
|
||||
return (function (foos, num) {
|
||||
return [...foos.map((foo) => foo), num];
|
||||
})(foos[index].nums, num);
|
||||
})}
|
||||
<p>bar: {bar}, num: {num}</p>
|
||||
{/each}
|
||||
@ -0,0 +1,29 @@
|
||||
export default {
|
||||
html: `
|
||||
<p>0</p>
|
||||
<p>bar: 1,2,3,1,1,2,3,2, num: 1</p>
|
||||
<p>bar: 0,2,4,1,0,2,4,2, num: 2</p>
|
||||
`,
|
||||
async test({ component, target, assert }) {
|
||||
assert.htmlEqual(
|
||||
target.innerHTML,
|
||||
`
|
||||
<p>0</p>
|
||||
<p>bar: 1,2,3,1,1,2,3,2, num: 1</p>
|
||||
<p>bar: 0,2,4,1,0,2,4,2, num: 2</p>
|
||||
`
|
||||
);
|
||||
|
||||
component.nums = [1, 2, 3];
|
||||
|
||||
assert.htmlEqual(
|
||||
target.innerHTML,
|
||||
`
|
||||
<p>0</p>
|
||||
<p>bar: 1,2,3,1,1,2,3,2,1,2,3,3, num: 1</p>
|
||||
<p>bar: 0,2,4,1,0,2,4,2,0,2,4,3, num: 2</p>
|
||||
<p>bar: -100,0,100,1,-100,0,100,2,-100,0,100,3, num: 3</p>
|
||||
`
|
||||
);
|
||||
}
|
||||
};
|
||||
@ -0,0 +1,26 @@
|
||||
<script>
|
||||
export let nums = [1, 2];
|
||||
let foos = [
|
||||
{
|
||||
nums: [1, 2, 3],
|
||||
},
|
||||
{
|
||||
nums: [0, 2, 4],
|
||||
},
|
||||
{
|
||||
nums: [-100, 0, 100],
|
||||
},
|
||||
];
|
||||
let foo = 0;
|
||||
</script>
|
||||
|
||||
<p>{foo}</p>
|
||||
{#each nums as num, index}
|
||||
{@const bar = nums.map((num) => {
|
||||
function func(foos, num) {
|
||||
return [...foos.map((foo) => foo), num];
|
||||
}
|
||||
return func(foos[index].nums, num);
|
||||
})}
|
||||
<p>bar: {bar}, num: {num}</p>
|
||||
{/each}
|
||||
Loading…
Reference in new issue