Faça sua pergunta e obtenha um resumo do documento referenciando esta página e o provedor AI de sua escolha
Este documento está desatualizado, a versão base foi atualizada em 22 de agosto de 2026.
Ir para a documentação em inglêsHistórico de versões
- "Adicionados formatadores para Vue"v5.8.020/08/2025
- "Adicionada documentação dos formatadores"v5.8.018/08/2025
- "Adicionar documentação do formatador de listas"v5.8.020/08/2025
- "Adicionar utilitários adicionais do Intl (DisplayNames, Collator, PluralRules)"v5.8.020/08/2025
- "Adicionar utilitários de locale (getLocaleName, getLocaleLang, getLocaleFromPath, etc.)"v5.8.020/08/2025
- "Adicionar utilitários para manipulação de conteúdo (getContent, getTranslation, getIntlayer, etc.)"v5.8.020/08/2025
O conteúdo desta página foi traduzido com uma IA.
Veja a última versão do conteúdo original em inglêsSe você tiver uma ideia para melhorar esta documentação, sinta-se à vontade para contribuir enviando uma pull request no GitHub.
Link do GitHub para a documentaçãoCopiar o Markdown do documento para a área de transferência
Formatadores Intlayer
Visão Geral
O Intlayer fornece um conjunto de helpers leves construídos sobre as APIs nativas Intl, além de um wrapper Intl em cache para evitar a construção repetida de formatadores pesados. Esses utilitários são totalmente sensíveis à localidade e podem ser usados a partir do pacote principal intlayer.
Intl em Cache
Como a construção do formatador é relativamente dispendiosa, este cache melhora o desempenho sem alterar o comportamento. O wrapper expõe a mesma API do Intl nativo, portanto o uso é idêntico.
Se Intl.DisplayNames não estiver disponível no ambiente, um único aviso para desenvolvedores é exibido (considere um polyfill).
Exemplos:
React Formatters
Intl.DisplayNames
Copiar o código para a área de transferência
Hooks Disponíveis
Todos os hooks usam automaticamente a locale de IntlayerProvider ou IntlayerServerProvider.
Abrir a tabela em um modal para ver todo o conteúdo claramente
| Hook | Description | Example Output |
|---|---|---|
useNumber() | Formatar números com agrupamento | "123,456.789" |
useCurrency() | Formatar valores de moeda | "€1,234.50" |
usePercentage() | Formatar percentagens | "25%" |
useDate() | Formatar datas e horas | "Aug 2, 2025" |
useRelativeTime() | Formatar tempo relativo | "in 3 days" |
useUnit() | Formatar valores com unidades | "5 kilometers" |
useCompact() | Formatar números em notação compacta | "1.2K" |
useList() | Formatar arrays como listas | "apple, banana, and orange" |
useIntl() | Obter objeto Intl vinculado à locale | Acesso completo à API Intl |
Intl.Collator
Copiar o código para a área de transferência
Intl.PluralRules
Para determinar formas plurais em diferentes locais:
Copiar o código para a área de transferência
Utilitários de Localidade
getLocaleName(displayLocale, targetLocale?)
Copiar o código para a área de transferência
Composables Disponíveis
Todos os composables retornam computed refs que usam automaticamente a locale do IntlayerProvider injetado.
Abrir a tabela em um modal para ver todo o conteúdo claramente
| Composable | Descrição | Exemplo de Saída |
|---|---|---|
useNumber() | Formatar números com agrupamento | "123,456.789" |
useCurrency() | Formatar valores de moeda | "€1,234.50" |
usePercentage() | Formatar percentuais | "25%" |
useDate() | Formatar datas e horas | "Aug 2, 2025" |
useRelativeTime() | Formatar tempo relativo | "in 3 days" |
useUnit() | Formatar valores com unidades | "5 kilometers" |
useCompact() | Formatar números em notação compacta | "1.2K" |
useList() | Formatar arrays como listas | "apple, banana, and orange" |
useIntl() | Obter objeto Intl vinculado à locale | Acesso completo à API Intl |
Exemplo Completo
Copiar o código para a área de transferência
getLocaleLang(locale?)
Extrai o código de idioma de uma string de locale:
Copiar o código para a área de transferência
Formatadores Vanilla JS / Node.js
Para contextos sem framework, importe formatadores diretamente do intlayer. Observe que você deve passar o locale manualmente.
getLocaleFromPath(inputUrl)
Copiar o código para a área de transferência
Funções de Formatter
number(value, options?)
Formata um valor numérico usando agrupamento e decimais compatíveis com a localidade.
- value:
number | string - options:
Intl.NumberFormatOptions & { locale?: LocalesValues }
Copiar o código para a área de transferência
percentage(value, options?)
Formata um número como uma string de percentual. Valores maiores que 1 são normalizados (ex: 25 → 25%, 0.25 → 25%).
- value:
number | string - options:
Intl.NumberFormatOptions & { locale?: LocalesValues }
Copiar o código para a área de transferência
currency(value, options?)
Formata um valor como moeda localizada. Padrão é USD.
- value:
number | string - options:
Intl.NumberFormatOptions & { locale?: LocalesValues }- Comuns:
currency,currencyDisplay("symbol" | "code" | "name")
- Comuns:
Copiar o código para a área de transferência
date(date, optionsOrPreset?)
Formata um valor de data/hora.
- date:
Date | string | number - optionsOrPreset:
Intl.DateTimeFormatOptions & { locale?: LocalesValues }or preset:"short" | "long" | "dateOnly" | "timeOnly" | "full"
Copiar o código para a área de transferência
relativeTime(from, to?, options?)
Formata tempo relativo entre dois instantes.
- from:
Date | string | number - to:
Date | string | number(padrão paranew Date()) - options:
{ locale?, unit?, numeric?, style? }
Copiar o código para a área de transferência
units(value, options?)
Formata um valor numérico com uma unidade.
- value:
number | string - options:
Intl.NumberFormatOptions & { locale?: LocalesValues }- Common:
unit(e.g.,"kilometer","byte"),unitDisplay("short" | "narrow" | "long")
- Common:
Copiar o código para a área de transferência
compact(value, options?)
Formata um número usando notação compacta.
- value:
number | string - options:
Intl.NumberFormatOptions & { locale?: LocalesValues }
Copiar o código para a área de transferência
list(values, options?)
Formata um array em uma string de lista localizada.
- values:
(string | number)[] - options:
Intl.ListFormatOptions & { locale?: LocalesValues }- Common:
type("conjunction" | "disjunction" | "unit"),style("long" | "short" | "narrow")
- Common:
Copiar o código para a área de transferência
Formatadores
Todos os helpers abaixo são exportados de intlayer.
Copiar o código para a área de transferência
Funcionalidades Intl Adicionais
Intl.DisplayNames
Para nomes localizados de idiomas, regiões, moedas e scripts:
Copiar o código para a área de transferência
Intl.Collator
Para comparação e classificação de strings com reconhecimento de locale:
Copiar o código para a área de transferência
Intl.PluralRules
Para determinar formas plurais em diferentes locales:
Copiar o código para a área de transferência
Utilitários de Locale
currency(value, options?)
Exemplos:
Copiar o código para a área de transferência
date(date, optionsOrPreset?)
Exemplos:
Copiar o código para a área de transferência
relativeTime(from, to = new Date(), options?)
Exemplos:
Copiar o código para a área de transferência
units(value, options?)
Exemplos:
Copiar o código para a área de transferência
compact(value, options?)
Exemplos:
Copiar o código para a área de transferência
getHTMLTextDir(locale?)
Retorna a direção do texto para uma localidade:
Copiar o código para a área de transferência
Utilitários de Tratamento de Conteúdo
list(values, options?)
Exemplos:
Copiar o código para a área de transferência
React
Componentes cliente:
Copiar o código para a área de transferência
Vue
Componentes cliente:
Copiar o código para a área de transferência
Notas
- Todos os helpers aceitam entradas
string; elas são internamente coagidas para números ou datas. - Locale padrão é sua
internationalization.defaultLocaleconfigurada, se não fornecida. - Esses utilitários são wrappers simples; para formatação avançada, passe pelas opções
Intlpadrão.
