React Select
El componente Seleccionar Ignite UI for React permite una sola selección de una lista de elementos, colocados en un menú desplegable. Este control de formulario ofrece una navegación rápida por la lista de elementos, incluida la selección, en función de una coincidencia de uno o varios caracteres.
React Select Example
Usage
Primero, debes instalar el paquete npm Ignite UI for React correspondiente ejecutando el siguiente comando:
npm install igniteui-react
Entonces tendrás que importar elIgrSelect y elIgrSelectItem y su CSS necesario, así:
import { IgrSelect, IgrSelectItem } from 'igniteui-react';
import 'igniteui-webcomponents/themes/light/bootstrap.css';
[!Note] Please note that the select header and group components are not mandatory unless you want to use them.
Para empezar a usar el componente, añade elIgrSelect junto con una lista deIgrSelectItem opciones para elegir:
<IgrSelect>
<IgrSelectItem value="Orange"><span>Orange</span></IgrSelectItem>
<IgrSelectItem value="Apple"><span>Apple</span></IgrSelectItem>
<IgrSelectItem value="Banana"><span>Banana</span></IgrSelectItem>
<IgrSelectItem value="Mango"><span>Mango</span></IgrSelectItem>
</IgrSelect>
Seleccionar
ElIgrSelect componente puede usarse dentro de unForm componente, por lo que expone unaname propiedad a la que debe registrarse. También tiene propiedadeslabel yplaceholder Laoutlined propiedad se utiliza solo con fines de estilismo cuando se trata del tema Material. Excepto por la ranura predeterminada, el componente ofrece algunas otras ranuras, incluyendoheader,footer,helper-text,prefix,suffix, ytoggle-icon. El tamaño del componente puede cambiarse usando la--ig-size variable CSS.
Item
ElIgrSelectItem componente permite a los usuarios especificar declarativamente una lista de opciones que el control va a utilizarIgrSelect. Cada elemento proporciona unavalue propiedad que representa los datos que transporta al seleccionarse. TieneIgrSelectItem una ranura predeterminada que permite especificar el contenido de texto del objeto. Este contenido textual se utilizará como valor en caso de que lavalue propiedad no esté presente en elIgrSelectItem. También podrías proporcionar contenido personalizado para renderizarse antes o después delIgrSelectItem contenido usando lasprefix ranuras ysuffix. Podrías predefinir un elemento seleccionado estableciendo laSelected propiedad. También podrías desactivar algunos o todos los elementos a través de ladisabled propiedad.
Header
Puedes usar elIgrSelectHeader para proporcionar un encabezado para un grupo de elementos.
<IgrSelect>
<IgrSelectHeader>
<span>Tasks</span>
</IgrSelectHeader>
</IgrSelect>
Group
Se pueden colocar variasIgrSelectItem s entre los corchetes de apertura y cierre de unIgrSelectGroup componente para que los usuarios puedan agruparlos visualmente. SeIgrSelectGroup puede etiquetar a través de sulabel ranura y desactivarse mediante sudisabled propiedad.
[!Note] Keep in mind that if a select group is disabled, you cannot enable separate items of it.
<IgrSelect>
<IgrSelectGroup>
<span slot="label">Europe</span>
<IgrSelectItem>
<span slot="prefix">
<IgrIcon name="place" collection="material"></IgrIcon>
</span>
<span> Germany </span>
<span slot="suffix">DE</span>
</IgrSelectItem>
<IgrSelectItem>
<span slot="prefix">
<IgrIcon name="place" collection="material"></IgrIcon>
</span>
<span> France </span>
<span slot="suffix">FR</span>
</IgrSelectItem>
<IgrSelectItem>
<span slot="prefix">
<IgrIcon name="place" collection="material"></IgrIcon>
</span>
<span> Spain </span>
<span slot="suffix">ES</span>
</IgrSelectItem>
</IgrSelectGroup>
</IgrSelect>
Validation
Además, soportaIgrSelect la mayoría de lasIgrInput propiedades, comorequired,disabled,autofocus, etc. El componente también expone un método vinculado a su validación:
reportValidity- comprueba la validez y enfoca el componente si no es válido.
Keyboard Navigation
Cuando la selección está enfocada y la lista de opciones no está visible:
- Abre el
selectusando la ALT + ↓ ↑ combinación o haciendo clic en la SPACE o la ENTER tecla. - Cierra la
selectcombinación usando la combinación de + ↑ ALT o ↓ o cualquiera de las ENTER, SPACE, ESC oIgrTablas teclas. - Usando las teclas ← → seleccionará el elemento anterior en la lista.
- Usando las teclas ↑ ↓ seleccionará el siguiente elemento en la lista.
- Usando las HOME teclas o END seleccionará el primer o último elemento de la lista.
- Al escribir caracteres se consultará la lista de elementos y se seleccionará el que más se asemeje a la entrada actual del usuario.
Cuando la selección está enfocada y la lista de opciones está visible:
- Usando las ENTER teclas o SPACE seleccionará un elemento y cerrará la lista.
- Usando las teclas ← → se activará el elemento anterior de la lista.
- El uso de las teclas ↑ ↓ activará el siguiente elemento de la lista.
- El uso de las HOME teclas o END activará el primer o último elemento de la lista.
[!Note] The
IgrSelectcomponent supports only single selection of items.
Styling
Puedes cambiar la apariencia del componente Ignite UI for ReactIgrSelect y sus elementos utilizando las piezas CSS expuestas que se enumeran a continuación:
Seleccionar componente
| Nombre de la pieza | Descripción |
|---|---|
input |
La entrada igc encapsulada. |
label |
La etiqueta de texto encapsulado. |
list |
Un contenedor que contiene la lista de opciones. |
prefix |
Un contenedor de prefijo que representa el contenido antes de la entrada. |
suffix |
Un contenedor de sufijo que representa el contenido después de la entrada. |
toggle-icon |
Un contenedor de icono de alternancia que representa el contenido dentro del contenedor de sufijo. |
helper-text |
Un contenedor de texto auxiliar que muestra el contenido debajo de la entrada. |
Seleccionar componente del artículo
| Nombre de la pieza | Descripción |
|---|---|
content |
El contenedor principal que contiene el contenido de texto de un elemento. |
prefix |
Un contenedor de prefijo que presenta el contenido antes del contenedor principal. |
suffix |
Un contenedor de sufijo que representa el contenido después del contenedor principal. |
Seleccionar componente de grupo
| Nombre de la pieza | Descripción |
|---|---|
label |
Un contenedor de etiquetas que muestra el contenido encima de los elementos del grupo seleccionado. |
igc-select::part(base) {
background: var(--ig-primary-50);
}
igc-select-item[active] {
background: var(--ig-secondary-300);
}
igc-select::part(input) {
background-color: var(--ig-primary-50);
}
igc-select::part(prefix),
igc-select::part(suffix) {
color: var(--ig-secondary-500-contrast);
background: var(--ig-secondary-500);
}