Components

Plural

Referencia de API del componente <Plural>

Descripción general

Usamos el componente <Plural> para manejar la pluralización de oraciones. Piensa en la diferencia entre: "Tienes un elemento." y "Tienes dos elementos."

En inglés, tienes que definir dos oraciones diferentes según la cantidad de elementos. En otros idiomas, puede que tengas que definir hasta seis.

const count = 1;
<Plural n={count}
  singular={Tienes un artículo.}
  plural={Tienes algunos artículos.}
/>

Referencias

Props

Prop

Type

La sintaxis [key]: string indica claves arbitrarias que representan posibles ramas de pluralización. Por ejemplo, se pueden agregar ramas como singular y plural como parámetros.

Descripción

Prop NameDescripción
nNúmero utilizado para determinar la forma plural. Es obligatorio para la pluralización.
childrenContenido de respaldo predeterminado para representar si no se encuentra ninguna rama plural coincidente.
localeslocales opcionales para especificar la locale de formato. Si no se proporciona, se usa la locale predeterminada del usuario. Lee más sobre cómo especificar locales aquí.
[key]: stringRamas que representan formas plurales. Las ramas exactas dependen de la locale.

Devuelve

JSX.Element que contiene el contenido correspondiente a la forma plural de n o el contenido de respaldo predeterminado.

Excepciones

Error si no se proporciona n o si no es un número válido.


¿Qué formas debo agregar?

Solo necesitas usar las formas de plural de tu idioma.

Las formas posibles son: "singular", "plural", "dual", "zero", "one", "two", "few", "many", "other".

  • Si eres desarrollador y usas "en-US", usa solo dos: "singular" y "plural".
  • Si eres desarrollador en "zh-CN", usa únicamente "other".

Obtén más información sobre las diferentes formas aquí.


Ejemplos

Uso básico

Usa el componente <Plural> para gestionar la pluralización.

BasicExample.jsx
import { Plural } from 'gt-react';

export default function ItemCount({ count }) {
  return (
    <Plural n={count} 
      singular={Tienes un elemento.}
      plural={Tienes varios elementos.}
    />
  );
}

Contenido de respaldo predeterminado

Puedes proporcionar contenido de respaldo predeterminado si el value pasado a n no coincide con ninguna rama.

FallbackExample.jsx
import { Plural } from 'gt-react';

export default function ItemCount({ count }) {
  return (
    <Plural n={count}
      singular={Tienes un elemento.}
    >
      Tienes varios elementos. // [!code highlight]
    </Plural>
  );
}

Traducción de plurales

Todo lo que tienes que hacer para traducir es añadir el componente <T>.

PluralExample.jsx
import { T, Plural } from 'gt-react';

export default function ItemCount({ count }) {
  return (
  <T id="itemCount">
    <Plural n={count}
      singular={Tienes un artículo.} 
      plural={Tienes algunos artículos.} 
    />
  );
}

Añadir variables

¿Qué pasa si queremos añadir variables a la frase en plural?

PluralExample.jsx
import { T, Plural, Num } from 'gt-react';

export default function ItemCount({ count }) {
  return (
    <Plural n={count}
      singular={Tienes <Num>{count}</Num> elemento.} 
      plural={Tienes <Num>{count}</Num> elementos.} 
    />
  );
}

Cuando estés dentro de un componente <T>, envuelve todo el contenido dinámico con <Currency>, <DateTime>, <Num> o <Var>.

<T id="itemCount">
  <Plural n={count}
    singular={Tienes <Num>{count}</Num> artículo.} 
    plural={Tienes <Num>{count}</Num> artículos.} 
  />
</T>

Notas

  • El componente <Plural> se utiliza para gestionar la pluralización.
  • Las ramas de plural disponibles (p. ej., one, other, few, many) dependen del locale y siguen las reglas de pluralización de Unicode CLDR.

Próximos pasos

  • Para ver más ejemplos, consulta la guía de referencia sobre componentes de ramificación aquí.
  • Para usos más avanzados, combina <Plural> con componentes de variables como <Currency>, <DateTime>, <Num> y <Var>. Lee más sobre los componentes de variables aquí.

¿Qué te ha parecido esta guía?

Plural