Visão geral do componente Seletor de data do Web Components
O Seletor de Data Ignite UI for Web Components é um componente rico em recursos usado para inserir uma data por meio da entrada manual de texto ou escolher valores de data em uma caixa de diálogo de calendário que aparece. Leve e simples de usar, o Seletor de datas permite que os usuários naveguem até a data desejada com várias opções de visualização – mês, ano e década. Ele também oferece suporte a propriedades de validação comuns, como restrições de data mínima e máxima e campos obrigatórios.
O componente Seletor de data Ignite UI for Web Components permite que os usuários escolham uma única data por meio de um menu suspenso de calendário de exibição mensal ou campo de entrada editável. O Seletor de Data Web Components também oferece suporte a um modo de diálogo para seleção somente no calendário, formatação de data personalizável e com reconhecimento de localidade e integração de validação.
[!NOTE] The
IgcDatePickerComponent
is a brand new component from Ignite UI for Web Components version 5.0.0. The oldIgcDatePickerComponent
prior to this version has been renamed toXDatePicker
and its respective documentation page can be found under "Deprecated Components"
Web Components Date Picker Example
Abaixo, você pode ver um exemplo que demonstra como o Seletor de Data funciona quando os usuários podem escolher uma data por meio de uma entrada de texto manual e clicar no ícone de calendário à esquerda para navegar até ela. Veja como renderizá-lo.
Getting Started with Web Components Date Picker
Primeiro, você precisa instalar o Ignite UI for Web Components executando o seguinte comando:
npm install igniteui-webcomponents
Você precisará importar o IgcDatePickerComponent
CSS necessário e registrar seu módulo, assim:
import { defineComponents, IgcDatePickerComponent } from 'igniteui-webcomponents';
import 'igniteui-webcomponents/themes/light/bootstrap.css';
defineComponents(IgcDatePickerComponent);
Para uma introdução completa ao Ignite UI for Web Components, leia o tópico Introdução.
Using the Web Components Date Picker Component
Display Date Picker
Para instanciar um IgcDatePickerComponent
em seu estado padrão dropdown
, use o seguinte código:
<igc-date-picker>
<p slot="helper-text">Date</p>
</igc-date-picker>
Options
O IgcDatePickerComponent
pode ser vinculado a a date
ou a string
.
const DatePicker = document.querySelector('igc-date-picker') as IgcDatePickerComponent;
const date = new Date();
DatePicker.value = date;
Se uma string estiver vinculada ao seletor, ela precisará estar no formato ISO 8601:
<igc-date-picker value="2000-01-01"></igc-date-picker>
Projecting components
Com slots de prefixo e sufixo, podemos adicionar conteúdo diferente antes e depois do conteúdo principal da entrada.
<igc-date-picker id="DatePicker">
<igc-icon slot="suffix" name="arrow_upward" collection="material" class="small" onclick="DatePicker.stepUp()"></igc-icon>
</igc-date-picker>
O snippet acima adicionará um ícone adicional no final da entrada, logo após o ícone de limpeza padrão. Isso não removerá o ícone de alternância padrão, pois prefixos e sufixos podem ser empilhados um após o outro.
Personalizando os ícones de alternância e limpeza
O calendário e o ícone de limpeza podem ser modelados usando os calendar
slots e clear
:
<igc-date-picker id="DatePicker">
<igc-icon slot="calendar" name="calendar" collection="material" class="small"></igc-icon>
<igc-icon slot="clear" name="delete" collection="material" class="small"></igc-icon>
</igc-date-picker>
Botões de ação personalizados
Os botões de ação do seletor podem ser modelados usando o actions
slot:
<igc-date-picker id="DatePicker">
<igc-button slot="actions" onclick="DatePicker.showWeekNumbers = true">Show Week Numbers</igc-button>
</igc-date-picker>
Keyboard Navigation
Possui IgcDatePickerComponent
navegação intuitiva pelo teclado que facilita incrementar, diminuir ou pular entre diferentes DateParts, entre outros, sem a necessidade de tocar no mouse.
Chaves | Descrição |
---|---|
← | Mover um caractere para o início |
→ | Mover um caractere para o final |
Casa | Mover para o início |
Fim | Mover para o final |
Ctrl / Comando + ← | Mover para o início da seção de data/hora - atual ou esquerda |
Ctrl / Comando + → | Mover para o final da seção de data/hora - atual ou à direita |
Foco em uma parte de data/hora + ↓ | Decrementa uma parte de data/hora |
Foco em uma parte de data/hora + ↑ | Incrementa uma parte de data/hora |
Ctrl / Comando +; | Define a data/hora atual como o valor do editor |
Esc | Fecha o pop-up do calendário e foca o campo de entrada |
Examples
Dialog Mode
O IgcDatePickerComponent
também suporta um dialog
modo:
<igc-date-picker id="DatePicker" mode="dialog">
</igc-date-picker>
Display and input format
inputFormat
e displayFormat
são propriedades que podem ser definidas para fazer com que o editor do seletor siga um formato especificado. O inputFormat
é baseado em localidade, portanto, se nenhum for fornecido, o seletor será padronizado para o usado pelo navegador.
Uma boa coisa a notar é que o componente Seletor de data sempre adicionará um zero à esquerda nas date
partes e month
se elas forem fornecidas em um formato que não o tenha, por exemplo d/M/yy
, torna-se dd/MM/yy
. Isso se aplica apenas durante a edição.
displayFormat
is used to format the picker's input when it is not focused. If no displayFormat
is provided, the picker will use the inputFormat
as its displayFormat
.
Mais informações sobre eles podem ser encontradas na seção de IgcDateTimeInputComponent
formato.
Increment and decrement
As IgcDatePickerComponent
exposições stepUp
e stepDown
métodos. Ambos vêm do IgcDateTimeInputComponent
e podem ser usados para incrementar e diminuir um específico DatePart
da data definida no momento.
<igc-date-picker id="DatePicker">
<igc-icon slot="prefix" name="arrow_upward" collection="material" onclick="DatePicker.stepUp()"></igc-icon>
<igc-icon slot="suffix" name="arrow_downward" collection="material" onclick="DatePicker.stepDown()"></igc-icon>
</igc-date-picker>
In Forms
O IgcDatePickerComponent
pode ser usado em um elemento de formulário, o componente e max
as propriedades atuam como validadores de min
formulário.
Nos formulários, podemos lidar com o igcChange
evento do componente e atualizar o valor do rótulo.
Calendar Specific settings
Eles IgcDatePickerComponent
podem modificar algumas das configurações do calendário por meio das propriedades que o Seletor de Data expõe. Alguns deles incluem visibleMonths
o que permite que mais de um calendário seja exibido quando o seletor se expande, weekStart
que determina o dia de início da semana, showWeekNumbers
que mostra o número de cada semana do ano e muito mais.
Internationalization
A localização do IgcDatePickerComponent
pode ser controlada por meio de sua locale
entrada.
Aqui está como uma definição de IgcDatePickerComponent
localidade com japonês seria:
<igc-date-picker locale="ja-JP">
</igc-date-picker>
Styling
O IgcDatePickerComponent
componente deriva do IgcInputComponent
componente e IgcCalendarComponent
, portanto, expõe todas as partes CSS disponíveis. Consulte Estilo de entrada e Estilo de calendário para referência.
igc-date-picker::part(header) {
background-color: var(--ig-primary-500);
color: var(--ig-primary-500-contrast);
}
igc-date-picker::part(calendar-content) {
background-color: var(--ig-surface-300);
}
igc-date-picker::part(date-inner current) {
color: var(--ig-info-300);
background-color: var(--ig-surface-300);
}
igc-date-picker::part(navigation-button):hover,
igc-date-picker::part(months-navigation):hover,
igc-date-picker::part(years-navigation):hover {
color: var(--ig-secondary-500);
}
igc-date-picker::part(month-inner current),
igc-date-picker::part(year-inner current),
igc-date-picker::part(navigation-button),
igc-date-picker::part(months-navigation),
igc-date-picker::part(years-navigation) {
color: var(--ig-info-300);
}
igc-date-picker::part(date-inner selected),
igc-date-picker::part(month-inner selected),
igc-date-picker::part(year-inner selected) {
color: var(--ig-secondary-500-contrast);
background-color: var(--ig-secondary-500);
}