You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I use the {#if expression}...{:else if expression}...{:else}...{/if} over a string or integer value.
The example given in the docs is nice, but when I need to extend it, I would see:
{#if status === '404'}
<p>Can't find it!</p>
{:else status === '200'}
<p>Just right!</p>
{:else if status === '500'}
<p>Server gone wrong.</p><!-- add in however many {:else if status === ... } statements. -->
{:else}
<p>Something is wrong!</p>
{/if}
Describe the proposed solution
I would like to see...
a {#switch ....} block.
My proposed idea would mimic the switch statement in JS.
{#switch status}
{:case '404'}
<p>Something is not right!</p>
{:case '200'}
<p>Just right!</p>
{:case '500'}
<p>Server gone wrong.</p><!-- insert however many {:case ...} statements -->
{:default}
<p>Something is wrong!</p>
{/switch}
In case we want to have fall-through:
{#switch type}
{:case 'cat'}
{:case 'dog'}
{:case 'parrot'}
{:case 'fish'}
{:case 'hamster'}
<p>They would make a nice pet!</p>
{:case 'alligator'}
{:case 'tiger'}
<p>They belong in a sanctuary!</p>
{:default}
<p>I don't know these...</p>
{/switch}
or maybe...
{#switch type}
{:case 'cat', 'dog', 'parrot', 'fish', 'hamster'}
<p>They would make a nice pet!</p>
{:case 'alligator', 'tiger'}
<p>They belong in a sanctuary!</p>
{:case 'ufo'}
{:default}
<p>I don't know where these would belong...</p>
{/switch}
NOTE: As for using breaks, I imagine it would be automatically used if following {:case} is a Svelte component or HTML tag. If after {:case ....} is empty or another {:case}, there would be fall-through, like the two fall-through examples above.
Alternatives considered
I'm still using the {#if else} block, and while even the Javascript switch function isn't used often, I think this would just be a nice-to-have.
Importance
nice to have
The text was updated successfully, but these errors were encountered:
Describe the problem
I'm always frustrated when...
I use the
{#if expression}...{:else if expression}...{:else}...{/if}
over a string or integer value.The example given in the docs is nice, but when I need to extend it, I would see:
Describe the proposed solution
I would like to see...
a {#switch ....} block.
My proposed idea would mimic the switch statement in JS.
In case we want to have fall-through:
or maybe...
NOTE: As for using
break
s, I imagine it would be automatically used if following {:case} is a Svelte component or HTML tag. If after {:case ....} is empty or another {:case}, there would be fall-through, like the two fall-through examples above.Alternatives considered
I'm still using the {#if else} block, and while even the Javascript switch function isn't used often, I think this would just be a nice-to-have.
Importance
nice to have
The text was updated successfully, but these errors were encountered: