Plurales con Intl.PluralRules
{
"cart": {
"items": {
"plural": "total",
"forms": {
"=0": "Tu cesta está vacía",
"one": "{count} elemento en tu cesta",
"other": "{count} elementos en tu cesta"
}
}
}
}
plural
indica el argumento numérico. Primero se busca una coincidencia exacta como
=0, luego la categoría de
Intl.PluralRules
y finalmente
other. El número debe ser finito.
El runtime entrega
count
a las formas como alias de ese número. Cuando el selector se llama
total, basta con pasar
{ total: 3 }. Si el selector se llama
count, ese mismo argumento sigue siendo obligatorio.
Alternativas con select
{
"invitation": {
"select": "role",
"forms": {
"owner": "{name}, puedes administrar el proyecto.",
"other": "{name}, puedes consultar el proyecto."
}
}
}
// En tu componente:
t('invitation', { role: 'owner', name: 'Meeko' })
El selector se convierte a texto para buscar su forma; un valor sin alternativa propia usa
other. Los parámetros utilizados por cualquiera de sus formas forman parte del contrato requerido.
Categorías de cada idioma
Los idiomas pueden necesitar categorías diferentes. Árabe usa zero, one, two, few, many y other; el catálogo del laboratorio incluye esas formas. Toda estructura plural o select requiere
other. Las formas contienen texto.