yew/examples/custom_components
Stig Johan Berggren 41a661fc12
Add README for Custom components example (#1170)
* Add readme for custom_components

* Markdown link and consistent header style

* Remove trailing space, consistent file name
2020-05-03 12:19:38 +08:00
..

Yew custom components demo

This example demonstrates how an application can be structured into components defined in separate modules, and how you can use callbacks to send messages to a component higher up in the hierarchy.

The components

lib.rs defines the root component, named Model. It constructs Barrier and Counter elements, and passes them callbacks that send messages back to Model. The lib module also brings the other components into the project with mod statements at the top of the file.

button.rs defines a Button component with an onsignal property. When the button is clicked, it generates an internal Clicked message, which is handled in the update function by calling self.onsignal.emit.

barrier.rs defines a Barrier which contains five Buttons with identical behaviour. The Barrier has an onsignal property, which is emitted if any of its child Buttons is clicked.

counter.rs defines a Counter component with several attributes that can be set using props.