Svelte • Runes
$host
When compiling a component as a custom element, the $host rune provides access to the host element, allowing you to (for example) dispatch custom events (demo):
<svelte:options customElement="my-stepper" />
<script lang="ts">
function dispatch(type) {
$host().dispatchEvent(new CustomEvent(type));
}
</script>
<button onclick={() => dispatch('decrement')}>decrement</button>
<button onclick={() => dispatch('increment')}>increment</button><svelte:options customElement="my-stepper" />
<script>
function dispatch(type) {
$host().dispatchEvent(new CustomEvent(type));
}
</script>
<button onclick={() => dispatch('decrement')}>decrement</button>
<button onclick={() => dispatch('increment')}>increment</button><script lang="ts">
import './Stepper.svelte';
let let count: numbercount = function $state<0>(initial: 0): 0 (+1 overload)
namespace $state
Declares reactive state.
Example:
let count = $state(0);
$function $state<0>(initial: 0): 0 (+1 overload)
namespace $state
Declares reactive state.
Example:
let count = $state(0);
state(0);
</script>
<my-stepper
ondecrement={() => let count: numbercount -= 1}
onincrement={() => let count: numbercount += 1}
></my-stepper>
<p>count: {let count: numbercount}</p><script>
import './Stepper.svelte';
let let count: numbercount = function $state<0>(initial: 0): 0 (+1 overload)
namespace $state
Declares reactive state.
Example:
let count = $state(0);
$function $state<0>(initial: 0): 0 (+1 overload)
namespace $state
Declares reactive state.
Example:
let count = $state(0);
state(0);
</script>
<my-stepper
ondecrement={() => let count: numbercount -= 1}
onincrement={() => let count: numbercount += 1}
></my-stepper>
<p>count: {let count: numbercount}</p>