Enumeração / Pluralização
Como a Enumeração Funciona
No Intlayer, a enumeração é alcançada através da função enu, que mapeia chaves específicas para seu conteúdo correspondente. Essas chaves podem representar valores numéricos, intervalos ou identificadores personalizados. Quando usadas com o React Intlayer ou Next Intlayer, o conteúdo apropriado é automaticamente selecionado com base na localidade do aplicativo e nas regras definidas.
Configurando a Enumeração
Para configurar a enumeração em seu projeto Intlayer, você precisa criar um módulo de conteúdo que inclua definições de enumeração. Aqui está um exemplo de uma enumeração simples para o número de carros:
import { enu, type DeclarationContent } from "intlayer";
const carEnumeration = {
key: "car_count",
content: {
numberOfCar: enu({
"<-1": "Menos que menos um carro",
"-1": "Menos um carro",
"0": "Nenhum carro",
"1": "Um carro",
">5": "Alguns carros",
">19": "Muitos carros",
}),
},
} satisfies DeclarationContent;
export default carEnumeration;
Neste exemplo, enu mapeia várias condições para conteúdos específicos. Quando usado em um componente React, o Intlayer pode escolher automaticamente o conteúdo apropriado com base na variável dada.
Usando Enumeração com React Intlayer
Para usar enumeração em um componente React, você pode aproveitar o hook useIntlayer do pacote react-intlayer. Este hook recupera o conteúdo correto com base no ID especificado. Aqui está um exemplo de como usá-lo:
import { useIntlayer } from "react-intlayer";
const CarComponent = () => {
const content = useIntlayer("car_count");
return (
<div>
<p>{content.numberOfCar(0)}</p> {/* Saída: Nenhum carro */}
<p>{content.numberOfCar(6)}</p> {/* Saída: Alguns carros */}
<p>{content.numberOfCar(20)}</p> {/* Saída: Alguns carros */}
</div>
);
};
export default CarComponent;
Neste exemplo, o componente ajusta dinamicamente sua saída com base no número de carros. O conteúdo correto é escolhido automaticamente, dependendo do intervalo especificado.
Notas Importantes
- A ordem de declaração é crucial nas enumerações do Intlayer. A primeira declaração válida é a que será escolhida.
- Se múltiplas condições se aplicarem, certifique-se de que estão ordenadas corretamente para evitar comportamentos inesperados.
Melhores Práticas para Enumeração
Para garantir que suas enumerações funcionem conforme o esperado, siga estas melhores práticas:
- Nomenclatura Consistente: Use IDs claros e consistentes para módulos de enumeração para evitar confusão.
- Documentação: Documente suas chaves de enumeração e suas saídas esperadas para garantir a manutenção futura.
- Tratamento de Erros: Implemente tratamento de erros para gerenciar casos onde nenhuma enumeração válida é encontrada.
- Otimizar o Desempenho: Para aplicativos grandes, reduza o número de extensões de arquivo monitoradas para melhorar o desempenho.
Recursos Adicionais
Para mais informações detalhadas sobre configuração e uso, consulte os seguintes recursos:
Esses recursos fornecem mais informações sobre a configuração e o uso do Intlayer em diferentes ambientes e com várias estruturas.
Se 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ção