mirror of https://github.com/sveltejs/svelte
parent
7c7a85754b
commit
8424395ac4
@ -1,7 +0,0 @@
|
||||
import { test } from '../../test';
|
||||
|
||||
export default test({
|
||||
compileOptions: {
|
||||
preventTemplateCloning: true
|
||||
}
|
||||
});
|
@ -1,49 +0,0 @@
|
||||
import 'svelte/internal/disclose-version';
|
||||
import * as $ from 'svelte/internal/client';
|
||||
|
||||
function increment(_, counter) {
|
||||
counter.count += 1;
|
||||
}
|
||||
|
||||
var root = () => {
|
||||
var button = document.createElement('button');
|
||||
var text = document.createTextNode(' ');
|
||||
|
||||
button.insertBefore(text, undefined)
|
||||
|
||||
var text_1 = document.createTextNode(' ');
|
||||
var comment = document.createComment('');
|
||||
var text_2 = document.createTextNode(' ');
|
||||
var fragment = document.createDocumentFragment();
|
||||
|
||||
fragment.append(button, text_1, comment, text_2)
|
||||
return fragment;
|
||||
};
|
||||
|
||||
export default function Prevent_template_cloning($$anchor) {
|
||||
let counter = $.proxy({ count: 0 });
|
||||
const promise = $.derived(() => Promise.resolve(counter));
|
||||
var fragment = root();
|
||||
var button = $.first_child(fragment);
|
||||
|
||||
button.__click = [increment, counter];
|
||||
|
||||
var text = $.child(button);
|
||||
|
||||
$.reset(button);
|
||||
|
||||
var node = $.sibling(button, 2);
|
||||
|
||||
$.await(node, () => $.get(promise), null, ($$anchor, counter) => {});
|
||||
|
||||
var text_1 = $.sibling(node);
|
||||
|
||||
$.template_effect(() => {
|
||||
$.set_text(text, `clicks: ${counter.count ?? ''}`);
|
||||
$.set_text(text_1, ` ${counter.count ?? ''}`);
|
||||
});
|
||||
|
||||
$.append($$anchor, fragment);
|
||||
}
|
||||
|
||||
$.delegate(['click']);
|
@ -1,14 +0,0 @@
|
||||
import * as $ from 'svelte/internal/server';
|
||||
|
||||
export default function Prevent_template_cloning($$payload) {
|
||||
let counter = { count: 0 };
|
||||
const promise = Promise.resolve(counter);
|
||||
|
||||
function increment() {
|
||||
counter.count += 1;
|
||||
}
|
||||
|
||||
$$payload.out += `<button>clicks: ${$.escape(counter.count)}</button> <!---->`;
|
||||
$.await(promise, () => {}, (counter) => {}, () => {});
|
||||
$$payload.out += `<!----> ${$.escape(counter.count)}`;
|
||||
}
|
@ -1,16 +0,0 @@
|
||||
<script>
|
||||
let counter = $state({ count: 0 });
|
||||
const promise = $derived(Promise.resolve(counter))
|
||||
|
||||
function increment() {
|
||||
counter.count += 1;
|
||||
}
|
||||
</script>
|
||||
|
||||
<button onclick={increment}>
|
||||
clicks: {counter.count}
|
||||
</button>
|
||||
|
||||
{#await promise then counter}{/await}
|
||||
|
||||
{counter.count}
|
Loading…
Reference in new issue