UI Overview
Components are the building blocks for your app's user interface (UI). They are the visual elements that make up your app, like buttons, text, and images.
Component Basics
Components are made up of children and props.
Children
* Text or other Reflex components nested inside a component. * Passed as **positional arguments**.Props
* Attributes that affect the behavior and appearance of a component. * Passed as **keyword arguments**.Children
* Text or other Reflex components nested inside a component. * Passed as **positional arguments**.Props
* Attributes that affect the behavior and appearance of a component. * Passed as **keyword arguments**.Let's take a look at the rx.text
component.
Hello World!
Here "Hello World!"
is the child text to display, while color
and font_size
are props that modify the appearance of the text.
Regular Python data types can be passed in as children to components. This is useful for passing in text, numbers, and other simple data types.
Another Example
Now let's take a look at a more complex component, which has other components nested inside it. The rx.vstack
component is a container that arranges its children vertically with space between them.
Sample Form
Some props are specific to a component. For example, the header
and content
props of the rx.accordion.item
component show the heading and accordion content details of the accordion respectively.
Styling props like color
are shared across many components.
You can find all the props for a component by checking its documentation page in the component library.
Pages
Reflex apps are organized into pages, each of which maps to a different URL.
Pages are defined as functions that return a component. By default, the function name will be used as the path, but you can also specify a route explicitly.
In this example we add a page called index
at the root route.
If you reflex run
the app, you will see the index
page at http://localhost:3000
.
Similarly, the about
page will be available at http://localhost:3000/about
.