Skip to content

Tabs

Pestañas para alternar entre vistas de contenido relacionado.


Import

jsx
import { Tabs, TabsList, TabsTrigger, TabsContent } from '@imansi/ui';

Uso básico

jsx
<Tabs defaultValue="cuenta">
  <TabsList>
    <TabsTrigger value="cuenta">Cuenta</TabsTrigger>
    <TabsTrigger value="password">Contraseña</TabsTrigger>
    <TabsTrigger value="notificaciones">Notificaciones</TabsTrigger>
  </TabsList>
  <TabsContent value="cuenta">Contenido de cuenta</TabsContent>
  <TabsContent value="password">Contenido de contraseña</TabsContent>
  <TabsContent value="notificaciones">Contenido de notificaciones</TabsContent>
</Tabs>

Controlado

jsx
const [tab, setTab] = useState('cuenta');

<Tabs value={tab} onValueChange={setTab}>
  {/* ... */}
</Tabs>

Con deshabilitado

jsx
<TabsList>
  <TabsTrigger value="activo">Activo</TabsTrigger>
  <TabsTrigger value="proximamente" disabled>
    Próximamente
  </TabsTrigger>
</TabsList>

Props

Tabs

PropTipoDefaultDescripción
valuestringTab activo (controlado)
defaultValuestringTab inicial
onValueChange(value: string) => voidCallback al cambiar
orientation'horizontal' | 'vertical''horizontal'Dirección

TabsTrigger

PropTipoDefaultDescripción
valuestringIdentificador de esta tab
disabledbooleanfalseDeshabilita la tab

Accesibilidad

  • Navegable con Tab
  • Flechas ← → cambian entre tabs
  • Home / End van a la primera/última
  • role="tablist" + role="tab" + role="tabpanel"
  • aria-selected y aria-controls automáticos

Hecho con ❤️ en Argentina