Saltar al contenido

Plurales y selectores

Elige una forma según una cantidad o una alternativa del mensaje.

Plurales con Intl.PluralRules

Catálogo JSON json
{
  "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

Catálogo y llamada ts
{
  "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.

Probar cantidades y permisos

¿Te sirvió esta página?

Añadir un comentario

Se envía al elegir «Sí» o «No». Solo se guardan la página, tu respuesta y el comentario: ni cookies ni datos tuyos.

0 de 2000 caracteres