Skip to content

Radio

A single radio input styled to match the library's design. For a group of radios with shared state, use RadioGroup instead.

Basic usage

Selected: option-a

Tailwind v4
vue
<script setup>
import { ref } from 'vue'
const picked = ref('option-a')
</script>

<template>
  <Radio v-model="picked" value="option-a" label="Option A" name="my-group" />
  <Radio v-model="picked" value="option-b" label="Option B" name="my-group" />
  <Radio v-model="picked" value="option-c" label="Option C" name="my-group" />
</template>

Disabled

Tailwind v4
vue
<Radio :model-value="'yes'" value="yes" label="Yes (disabled, checked)" disabled />
<Radio :model-value="'yes'" value="no" label="No (disabled)" disabled />

Props

PropTypeDefaultDescription
modelValuestring | booleanThe currently selected value in the group
valuestringThe value this radio represents
labelstringVisible label rendered next to the dot
disabledbooleanfalsePrevents selection
namestringHTML name attribute for grouping native radio inputs

Emits

EventPayloadDescription
update:modelValuestringThe value of this radio when selected

Private — Jetpack Labs internal use only