atualizar conteúdo
Breakings
- Os dados não estão mais conectados à cadeia de primeiro nível e precisam ser obtidos da cadeia (este tipo de cenário de uso direto também é menor)
- valor const = i18n.button.submit; + valor const = i18n.chain.button.submit;
- Exclua o sublinhado
_
e ajuste o método integrado de volta à cadeia de primeiro nível
- i18n ._. local ('zh'); + i18n.local ('zh');
- Exclua
useI18n
, altere para obter a cadeia da instância
função App: FC = () => { - useI18n (i18n); + cadeia const = i18n.use (); return <div> {chain.button.submit} </div>; }
- Exclua os componentes de alto nível
I18nProvider
e altere para obter o hoc da instância
classe App estende Component { render () { + const {chain} = this.props; - retornar <div> {i18n.button.submit} </div>; + return <div> {chain.button.submit} </div>; } } - exportar I18nProvider (i18n) (App) padrão; + exportar i18n.hoc padrão (App);
Características
- Novos métodos
translate
,t
consistentes com aqueles, são usados para traduzir modelos de string - Nova ferramenta de geração de modelo de string
// É o mesmo que escrever uma string diretamente, mas aqui está um prompt const key = i18n. Literal . Button . Submit ; // key === 'button.submit' // Você pode usar o método translate para obter o valor const dos dados reais = i18n. translate (key); // value === 'Enviar'
------------------------------------
Introdução
Por falar em internacionalização, você já fez a duplicação do copiar e colar o ano todo? t('home:submit')
t('common:something:success')
Não há dicas como essas, é preciso lembrar, não só a eficiência de desenvolvimento é baixa, mas o teclado é fácil de digitar as letras erradas com mais rapidez.A questão é que dificilmente se encontra esse tipo de erro.
Prefiro código com dicas. Usando-o typescript
, inventei um componente i18n que usa operações encadeadas e tem todas as dicas. Assim i18n.common.something.success
, o código pode ser preenchido automaticamente para garantir que não haja erros.
compatibilidade
IE | Beira | cromada | Raposa de fogo | Safári | Nó |
---|---|---|---|---|---|
9+ | 12+ | 5+ | 4+ | 5+ | * |