UIKit
7.13.0
• TabsComponentes
UIKit
7.13.0
Date Components
3.1.0
Navigation
3.3.8
Tabs
size
disabled
import {TabProvider, TabList, Tab, TabPanel} from '@gravity-ui/uikit';
Los componentes de pestañas se utilizan para explorar, organizar el contenido y cambiar entre diferentes vistas.
First Panel
Second Panel
Third Panel
<TabProvider value={activeTab} onUpdate={setActiveTab}>
<TabList>
<Tab value="first">First Tab</Tab>
<Tab value="second">Active Tab</Tab>
<Tab value="third" disabled>Disabled Tab</Tab>
</TabList>
<div>
<TabPanel value="first">First Panel</TabPanel>
<TabPanel value="second">Second Panel</TabPanel>
<TabPanel value="third">Third Panel</TabPanel>
</div>
</TabProvider>
§Componentes
§TabProvider
Un componente que proporciona la funcionalidad de selección de pestañas
§Propiedades
Nombre | Descripción | Tipo | Predeterminado |
---|---|---|---|
niños | Lista de pestañas y paneles de pestañas, probablemente con algunos envoltorios | React.ReactNode | |
valor | Valor de pestaña activa | string | |
onUpdate | Actualizar el controlador de pestañas | (value: string) => void |
§TabList
Componente que sirve de contenedor para un conjunto de tabs
§Tamaño
Para controlar el tamaño del tabs
uso de la size
propiedad. El tamaño predeterminado es m
.
<TabList value="second" size="m">
<Tab value="first">M Size first</Tab>
<Tab value="second">M Size second</Tab>
</TabList>
<TabList value="second" size="l">
<Tab value="first">L Size first</Tab>
<Tab value="second">L Size second</Tab>
</TabList>
<TabList value="second" size="xl">
<Tab value="first">XL Size first</Tab>
<Tab value="second">v Size second</Tab>
</TabList>
§Propiedades
Nombre | Descripción | Tipo | Predeterminado |
---|---|---|---|
niños | Lista de pestañas, probablemente con algunos envoltorios | React.ReactNode | |
valor | Valor de pestaña activa | string | |
onUpdate | Actualizar el controlador de pestañas | (value: string) => void | |
className | Clase CSS del elemento | string | |
activateOnFocus | Activa la pestaña al enfocar. Úselo solo si el contenido del panel se puede mostrar inmediatamente | boolean | false |
tamaño | Tamaño del elemento | "m" "xl" | "m" |
qa | data-qa Atributo HTML, usado en las pruebas | string |
§pestaña
Este componente se usa para renderizar elementos de pestañas.
§Icono
Se usa si necesita mostrar un icono para un elemento de pestaña.
<TabList value="first">
<Tab value="first" icon={<Icon size={16} data={GearIcon} />}>Tab with icon</Tab>
<Tab value="second">Tab without icon</Tab>
</TabList>
§Estados
El elemento de la pestaña tiene el indicador desactivado.
<TabList value="first">
<Tab value="first" >First Tab</Tab>
<Tab value="second" disabled>Disabled Tab</Tab>
</TabList>
§Contador
Se usa si necesita mostrar un número para un elemento de pestañas.
<TabList value="first">
<Tab value="first" counter={13}>First Tab</Tab>
<Tab value="second" counter={3}>Second Tab</Tab>
</TabList>
§Etiqueta
Se usa si necesita mostrar una etiqueta para un elemento de pestañas.
<TabList value="first">
<Tab value="first" label={{content: 'Label 1'}}>First Tab</Tab>
<Tab value="second" label={{content: 'Label 2'}}>Second Tab</Tab>
</TabList>
§Propiedades
Nombre | Descripción | Tipo | Predeterminado |
---|---|---|---|
valor | Valor de tabulación | string | |
título | Título de la pestaña | string | |
icono | Icono que se muestra al inicio | React.ReactNode | |
mostrador | Contenido que se muestra al final | number string | |
href | Una URL a la que vincular. | string | |
etiqueta | <Label> se muestra al final | React.ReactNode | |
inhabilitado | Estado inactivo | boolean | |
niños | Contenido de la pestaña | React.ReactNode | |
qa | data-qa Atributo HTML, usado en las pruebas | string |
§TabPanel
Es un elemento contenedor para el contenido asociado a una pestaña
§Propiedades
Nombre | Descripción | Tipo | Predeterminado |
---|---|---|---|
niños | Contenido del panel | React.ReactNode | |
valor | Valor de pestaña activa | string | |
qa | data-qa Atributo HTML, usado en las pruebas | string |
§API CSS
Nombre | Descripción |
---|---|
--g-tabs-border-width | Ancho del borde de las pestañas |
--g-tabs-item-height | Altura del elemento de pestañas |
--g-tabs-item-border-width | Ancho del borde del elemento de pestañas |
--g-tabs-item-gap | Distancia entre pestañas |
--g-tabs-vertical-item-height | Altura vertical del elemento de las pestañas |
--g-tabs-vertical-item-padding | Relleno vertical de elementos con pestañas |