Ir para o conteúdo principal

Intl.PluralRules

Tradução Beta Não Oficial

Esta página foi traduzida por PageTurner AI (beta). Não é oficialmente endossada pelo projeto. Encontrou um erro? Reportar problema →

Um polyfill compatível com a especificação para Intl.PluralRules, totalmente testado pela suíte oficial de testes de conformidade ECMAScript

npm Version size

Instalação

npm i @formatjs/intl-pluralrules

Requisitos

Uso

Via polyfill-fastly.io

Você pode usar o Construtor de URL polyfill-fastly.io para criar uma tag de script polyfill para Intl.PluralRules. Por padrão, a URL gerada não inclui dados de localidade. Para adicionar dados de localidade, inclua Intl.PluralRules.~locale.<locale> na sua lista de recursos. Por exemplo:

<!-- Polyfill Intl.PluralRules, its dependencies & `en` locale data -->
<script src="https://polyfill-fastly.io/v3/polyfill.min.js?features=Intl.PluralRules,Intl.PluralRules.~locale.en"></script>

Implementação simples

import '@formatjs/intl-pluralrules/polyfill'
import '@formatjs/intl-pluralrules/locale-data/en' // locale-data for en

React Native

O código de detecção condicional do polyfill executa muito lentamente no Android e pode aumentar o tempo de inicialização do seu app em segundos. Como o React Native utiliza Hermes que não suporta Intl.PluralRules, importe /polyfill-force para obter desempenho significativamente melhor:

import '@formatjs/intl-pluralrules/polyfill-force' // instead of /polyfill
import '@formatjs/intl-pluralrules/locale-data/en'

Importação dinâmica + detecção de compatibilidade

import {shouldPolyfill} from '@formatjs/intl-pluralrules/should-polyfill'
async function polyfill(locale: string) {
const unsupportedLocale = shouldPolyfill(locale)
// This locale is supported
if (!unsupportedLocale) {
return
}
// Load the polyfill 1st BEFORE loading data
await import('@formatjs/intl-pluralrules/polyfill-force')
await import(`@formatjs/intl-pluralrules/locale-data/${unsupportedLocale}`)
}