Skip to main content

    Radio

    Radio buttons allow users to select one option from a group of related options. To group options, wrap the Radio components inside a RadioGroup component. If you want to give the user more than 4 options, consider using a Select component.

    Import

    import { Radio } from '@dynatrace/strato-components-preview/forms';

    Use cases

    This is the simplest version of the Radio, which is uncontrolled and therefore handles its state internally. You can also set a specific initial value using the defaultValue prop.

    Note: You need to add the name prop to link the radio buttons correctly.

    CodeSandbox

    Control the state

    The Radio can also be controlled, meaning that you can handle the state. To do so, you need to use the onChange prop to provide a handler that is called when the internal state of the Radio changes. You also need to assign the value from the state to the Radio by setting the value prop.

    CodeSandbox

    Validate

    This example shows how you can validate the Radio using the react-hook-form package, which handles error messages. For connecting the form with the Radio and validating, you need to register the field with custom error messages and use the useForm hook from react-hook-form. Also, by using the controlState prop, you can override the error messages and connect the Radio's error state and message to that of the form. This shows a hint in case of an error and applies proper styling to the component.

    CodeSandbox

    Disable

    You can disable the entire RadioGroup by adding the disabled prop to it. Alternatively, you can also disable individual items by adding the disabled prop to the Radio item.

    CodeSandbox
    Still have questions?
    Find answers in the Dynatrace Community