mirror of https://github.com/sveltejs/svelte
fix: omit unnecessary nullish coallescing in template expressions (#15056)
* omit unnecessary nullish coallescing in template expressions * add teststracked
parent
700029bd4d
commit
5f6525f416
@ -0,0 +1,5 @@
|
||||
---
|
||||
'svelte': patch
|
||||
---
|
||||
|
||||
fix: omit unnecessary nullish coallescing in template expressions
|
@ -0,0 +1,3 @@
|
||||
import { test } from '../../test';
|
||||
|
||||
export default test({});
|
@ -0,0 +1,34 @@
|
||||
import 'svelte/internal/disclose-version';
|
||||
import * as $ from 'svelte/internal/client';
|
||||
|
||||
var on_click = (_, count) => $.update(count);
|
||||
var root = $.template(`<h1></h1> <b></b> <button> </button> <h1></h1>`, 1);
|
||||
|
||||
export default function Nullish_coallescence_omittance($$anchor) {
|
||||
let name = 'world';
|
||||
let count = $.state(0);
|
||||
var fragment = root();
|
||||
var h1 = $.first_child(fragment);
|
||||
|
||||
h1.textContent = `Hello, ${name ?? ''}!`;
|
||||
|
||||
var b = $.sibling(h1, 2);
|
||||
|
||||
b.textContent = `${1 ?? 'stuff'}${2 ?? 'more stuff'}${3 ?? 'even more stuff'}`;
|
||||
|
||||
var button = $.sibling(b, 2);
|
||||
|
||||
button.__click = [on_click, count];
|
||||
|
||||
var text = $.child(button);
|
||||
|
||||
$.reset(button);
|
||||
|
||||
var h1_1 = $.sibling(button, 2);
|
||||
|
||||
h1_1.textContent = `Hello, ${name ?? 'earth' ?? ''}`;
|
||||
$.template_effect(() => $.set_text(text, `Count is ${$.get(count) ?? ''}`));
|
||||
$.append($$anchor, fragment);
|
||||
}
|
||||
|
||||
$.delegate(['click']);
|
@ -0,0 +1,8 @@
|
||||
import * as $ from 'svelte/internal/server';
|
||||
|
||||
export default function Nullish_coallescence_omittance($$payload) {
|
||||
let name = 'world';
|
||||
let count = 0;
|
||||
|
||||
$$payload.out += `<h1>Hello, ${$.escape(name)}!</h1> <b>${$.escape(1 ?? 'stuff')}${$.escape(2 ?? 'more stuff')}${$.escape(3 ?? 'even more stuff')}</b> <button>Count is ${$.escape(count)}</button> <h1>Hello, ${$.escape(name ?? 'earth' ?? null)}</h1>`;
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
<script>
|
||||
let name = 'world';
|
||||
let count = $state(0);
|
||||
</script>
|
||||
<h1>Hello, {null}{name}!</h1>
|
||||
<b>{1 ?? 'stuff'}{2 ?? 'more stuff'}{3 ?? 'even more stuff'}</b>
|
||||
<button onclick={()=>count++}>Count is {count}</button>
|
||||
<h1>Hello, {name ?? 'earth' ?? null}</h1>
|
Loading…
Reference in new issue