mirror of https://github.com/sveltejs/svelte
parent
2f80667f20
commit
db938a4559
@ -1,7 +1,6 @@
|
|||||||
<script>
|
<script>
|
||||||
let a = 1;
|
export let a = 1;
|
||||||
let b = 2;
|
export let b = 2;
|
||||||
|
|
||||||
let max;
|
$: console.log('max', Math.max(a, b));
|
||||||
$: max = Math.max(a, b);
|
|
||||||
</script>
|
</script>
|
@ -0,0 +1,78 @@
|
|||||||
|
/* generated by Svelte vX.Y.Z */
|
||||||
|
import {
|
||||||
|
SvelteComponent,
|
||||||
|
append,
|
||||||
|
detach,
|
||||||
|
element,
|
||||||
|
init,
|
||||||
|
insert,
|
||||||
|
noop,
|
||||||
|
safe_not_equal,
|
||||||
|
set_data,
|
||||||
|
text
|
||||||
|
} from "svelte/internal";
|
||||||
|
import { onMount } from "svelte";
|
||||||
|
|
||||||
|
function create_fragment(ctx) {
|
||||||
|
var p, t;
|
||||||
|
|
||||||
|
return {
|
||||||
|
c() {
|
||||||
|
p = element("p");
|
||||||
|
t = text(ctx.y);
|
||||||
|
},
|
||||||
|
|
||||||
|
m(target, anchor) {
|
||||||
|
insert(target, p, anchor);
|
||||||
|
append(p, t);
|
||||||
|
},
|
||||||
|
|
||||||
|
p(changed, ctx) {
|
||||||
|
if (changed.y) {
|
||||||
|
set_data(t, ctx.y);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
i: noop,
|
||||||
|
o: noop,
|
||||||
|
|
||||||
|
d(detaching) {
|
||||||
|
if (detaching) {
|
||||||
|
detach(p);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
function instance($$self, $$props, $$invalidate) {
|
||||||
|
let a, b, c;
|
||||||
|
|
||||||
|
onMount(() => {
|
||||||
|
const interval = setInterval(() => {
|
||||||
|
$$invalidate('b', b += 1);
|
||||||
|
c += 1;
|
||||||
|
|
||||||
|
console.log(b, c);
|
||||||
|
}, 1000);
|
||||||
|
|
||||||
|
return () => clearInterval(interval);
|
||||||
|
});
|
||||||
|
|
||||||
|
let x, y;
|
||||||
|
|
||||||
|
$$self.$$.update = ($$dirty = { a: 1, b: 1 }) => {
|
||||||
|
if ($$dirty.a) { x = a * 2; }
|
||||||
|
if ($$dirty.b) { $$invalidate('y', y = b * 2); }
|
||||||
|
};
|
||||||
|
|
||||||
|
return { y };
|
||||||
|
}
|
||||||
|
|
||||||
|
class Component extends SvelteComponent {
|
||||||
|
constructor(options) {
|
||||||
|
super();
|
||||||
|
init(this, options, instance, create_fragment, safe_not_equal, []);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Component;
|
@ -0,0 +1,21 @@
|
|||||||
|
<script>
|
||||||
|
import { onMount } from 'svelte';
|
||||||
|
|
||||||
|
let a, b, c;
|
||||||
|
|
||||||
|
onMount(() => {
|
||||||
|
const interval = setInterval(() => {
|
||||||
|
b += 1;
|
||||||
|
c += 1;
|
||||||
|
|
||||||
|
console.log(b, c);
|
||||||
|
}, 1000);
|
||||||
|
|
||||||
|
return () => clearInterval(interval);
|
||||||
|
});
|
||||||
|
|
||||||
|
$: x = a * 2;
|
||||||
|
$: y = b * 2;
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<p>{y}</p>
|
@ -1,16 +1,35 @@
|
|||||||
export default {
|
export default {
|
||||||
immutable: true,
|
immutable: true,
|
||||||
|
|
||||||
html: `<div><h3>Called 1 times.</h3></div>`,
|
html: `
|
||||||
|
<div>
|
||||||
|
<h3>Called 1 times.</h3>
|
||||||
|
<p>baz true</p>
|
||||||
|
</div>
|
||||||
|
`,
|
||||||
|
|
||||||
ssrHtml: `<div><h3>Called 0 times.</h3></div>`,
|
ssrHtml: `
|
||||||
|
<div>
|
||||||
|
<h3>Called 0 times.</h3>
|
||||||
|
<p>baz false</p>
|
||||||
|
</div>`,
|
||||||
|
|
||||||
test({ assert, component, target, window }) {
|
test({ assert, component, target }) {
|
||||||
var nested = component.nested;
|
var nested = component.nested;
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, `<div><h3>Called 1 times.</h3></div>`);
|
assert.htmlEqual(target.innerHTML, `
|
||||||
|
<div>
|
||||||
|
<h3>Called 1 times.</h3>
|
||||||
|
<p>baz true</p>
|
||||||
|
</div>
|
||||||
|
`);
|
||||||
|
|
||||||
nested.foo = nested.foo;
|
nested.foo = nested.foo;
|
||||||
assert.htmlEqual(target.innerHTML, `<div><h3>Called 1 times.</h3></div>`);
|
assert.htmlEqual(target.innerHTML, `
|
||||||
|
<div>
|
||||||
|
<h3>Called 1 times.</h3>
|
||||||
|
<p>baz true</p>
|
||||||
|
</div>
|
||||||
|
`);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in new issue