Skip to content

Commit ebbdb42

Browse files
MeuhMeuhantony
andauthored
Tutorial : a better explanation of component events (#4639)
* feat(tutorial): better explanation of component events Co-Authored-By: Antony Jones <ant@enzy.org>
1 parent 8db3e8d commit ebbdb42

File tree

1 file changed

+7
-1
lines changed
  • site/content/tutorial/05-events/04-component-events

1 file changed

+7
-1
lines changed

site/content/tutorial/05-events/04-component-events/text.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,10 @@ Components can also dispatch events. To do so, they must create an event dispatc
1818
</script>
1919
```
2020

21-
> `createEventDispatcher` must be called when the component is first instantiated — you can't do it later inside e.g. a `setTimeout` callback. This links `dispatch` to the component instance.
21+
> `createEventDispatcher` must be called when the component is first instantiated — you can't do it later inside e.g. a `setTimeout` callback. This links `dispatch` to the component instance.
22+
23+
Notice that the `App` component is listening to the messages dispatched by `Inner` component thanks to the `on:message` directive. This directive is an attribute prefixed with `on:` followed by the event name that we are dispatching (in this case, `message`).
24+
25+
Without this attribute, messages would still be dispatched, but the App would not react to it. You can try removing the `on:message` attribute and pressing the button again.
26+
27+
> You can also try changing the event name to something else. For instance, change `dispatch('message')` to `dispatch('myevent')` in `Inner.svelte` and change the attribute name from `on:message` to `on:myevent` in the `App.svelte` component.

0 commit comments

Comments
 (0)