Web Components Mask Input Overview
La entrada de máscara Ignite UI for Web Components es un campo de entrada que permite al desarrollador controlar la entrada del usuario y formatear el valor visible, en función de reglas configurables. Proporciona diferentes opciones de entrada y facilidad de uso y configuración.
Web Components Mask Input Example
Usage
En primer lugar, debe instalar el Ignite UI for Web Components ejecutando el siguiente comando:
npm install igniteui-webcomponents
Antes de usarlosIgcMaskInputComponent, debes registrarlo de la siguiente manera:
import { defineComponents, IgcMaskInputComponent } from 'igniteui-webcomponents';
import 'igniteui-webcomponents/themes/light/bootstrap.css';
defineComponents(IgcMaskInputComponent);
Para una introducción completa al Ignite UI for Web Components, lee el tema Empezar.
Mask Rules
La siguiente tabla muestra las reglas de máscara integradas admitidas:
| Personaje de máscara | Descripción |
|---|---|
| 0 | Carácter de dígito [0-9]. Se requiere entrada. |
| 9 | Carácter de dígito [0-9]. La entrada es opcional. |
| # | Carácter de dígito [0-9], signo más (+) o menos (-). Se requiere entrada. |
| l | Carácter de letra. Se requiere entrada. |
| ? | Carácter de letra. La entrada es opcional. |
| A | Carácter alfanumérico (letra o dígito). Se requiere entrada. |
| a | Carácter alfanumérico (letra o dígito). La entrada es opcional. |
| & | Cualquier carácter del teclado. Se requiere entrada. |
| C | Cualquier carácter del teclado. La entrada es opcional. |
| \ | Escapa de una bandera de máscara y la convierte en literal. |
Estas banderas también participan en la validación de componentes, es decir, la entrada se vuelve inválida si se llenan algunas, pero no todas, las posiciones requeridas (ningún valor lleno o vacío sigue siendo responsabilidad derequired ella). Esto se aplica tanto a entradas independientes como cuando se incluyen en un formulario.
Applying Mask
Aplicar la mascarilla es bastante sencillo. Solo tienes que proporcionar un patrón predeterminado para lamask propiedad de la entrada.
En el siguiente ejemplo, aplicaremos una máscara para un número de teléfono con un código de extensión.
<igc-mask-input id="mask-input" mask="(####) 00-00-00 Ext. 9999">
<igc-icon name="phone" slot="prefix"></igc-icon>
<span slot="helper-text">Phone number</span>
</igc-mask-input>
Después de eso deberías ver lo siguiente en tu navegador:
Prompt Character
Los desarrolladores pueden personalizar el símbolo de indicación usado para las partes sin rellenar de la máscara. Para ello, simplemente aporta cualquier carácter a laprompt propiedad:
<igc-mask-input id="mask-input" mask="(####) 00-00-00 Ext. 9999" prompt="-"></igc-mask-input>
Por defecto, elprompt carácter es guion de guion.
Placeholder
Los promotores también pueden aprovechar laplaceholder propiedad, que cumple la función del atributo temporal de entrada nativa. Si no se proporciona valor para el marcador de posición, el valor de la máscara se utiliza como tal.
<igc-mask-input id="mask-input" mask="00/00/0000" placeholder="dd/MM/yyyy"></igc-mask-input>
Value Modes
RevelaIgcMaskInputComponent unavalueMode propiedad que te permite elegir entreraw opcioneswithFormatting y opciones para configurar qué valor de entrada (formateado o en bruto) vincular en tu formulario cuando se aplica una máscara específica. Por defecto,valueMode está configurado comoraw. Pruébalo tú mismo en el ejemplo de abajo:
Styling
ElIgcMaskInputComponent componente expone las piezas CSS de casi todos sus elementos internos. La siguiente tabla enumera todas las partes CSS expuestas:
| Nombre | Descripción |
|---|---|
container |
El contenedor principal que contiene todos los elementos de entrada principales. |
input |
El elemento de entrada nativo. |
label |
El elemento de etiqueta nativo. |
prefix |
El contenedor de prefijo. |
suffix |
El contenedor del sufijo. |
helper-text |
El contenedor de texto auxiliar. |
igc-mask-input::part(input) {
background-color: var(--ig-primary-100);
border-color: var(--ig-secondary-500);
box-shadow: none;
}
igc-mask-input::part(input)::placeholder {
color: var(--ig-primary-100-contrast);
}
Assumptions and limitations
- La entrada enmascarada no expone un atributo de tipo ya que siempre es una entrada de tipo texto.
- Actualmente no se admite el comportamiento de deshacer/rehacer.
API References
IgcInputComponentIgcMaskInputComponentIgcIconComponentIgcRadioComponentIgcRadioGroupComponentStyling & Themes