Composition
Each and every atomic components in our library supports Ariakit's Composition
Atomic components are put together into a single complex component in most of the components. Inorder to customize the behavior of this complex component, we provide two ways to customize it as per the needs.
- Simple Composition
- Advanced Composition
Let's take the Checkbox component to explain the composition.
Basic Usage
Simple Composition
Directly pass the atomic components specific to its complex component as childrens or as render prop.
Without state as childrens
With State as render prop
Advanced Composition
Only compose using the atomic components specific to its complex component
separately with the help of useComponentProps
& useComponentState
.
Using useComponentProps
Basic usage that can be used to add additional DOM elements within these atomic components but cannot change the state or the libraries behavior.
Using useComponentState
Advanced usage that uses the only the Component State to change the behavior of the component that is different from library logic.