Magic Translate vs. Angular i18n
Os aplicativos Angular geralmente são traduzidos com uma das três ferramentas: i18n embutido do Angular, ngx-translate ou Transloco. Todos os três exigem traduções para cada idioma antes de você lançar seu aplicativo. Magic Translate traduz o texto em seus modelos diretamente, sem arquivos de tradução.
Em um piscar de olhos
| Magic Translate | Angular i18n | ngx-translate e Transloco | |
|---|---|---|---|
| Como você escreve texto | Suas próprias palavras, em <t> ou t pipe | Suas próprias palavras, marcadas com i18n | Uma chave para cada mensagem |
| Traduções | Tradução de IA, criada automaticamente | Extraído para arquivos XLIFF e traduzido por você | Arquivos JSON por idioma, escritos por você |
| Mudando de idioma | Em tempo de execução | Uma compilação por idioma | Em tempo de execução |
| Renderização do servidor | Sim, traduzido no momento da construção com pré-renderização | sim | Sim, com configuração extra |
| Preço | Plano gratuito e, em seguida, planos mensais com base no uso | Grátis, parte do Angular | Código aberto e gratuito |
Como o código difere
Com o i18n embutido do Angular, você marca o texto, o extrai e traduz o arquivo extraído para cada idioma:
<h2 i18n>Your shopping cart</h2>
ng extract-i18n# then translate messages.xlf into messages.de.xlf, messages.fr.xlf, …# and build the app once per language
Com ngx-translate ou Transloco, cada mensagem tem uma chave e suas traduções ficam em arquivos JSON:
<!-- ngx-translate --><h2>{{ 'cart.title' | translate }}</h2><!-- Transloco --><h2>{{ 'cart.title' | transloco }}</h2>
Com Magic Translate, você escreve o texto e lança seu aplicativo:
<h2><t>Your shopping cart</t></h2><input [placeholder]="'Search products' | t" />
Quando escolher Magic Translate
- Você quer seu aplicativo Angular em vários idiomas sem extrair, traduzir e carregar arquivos.
- Você quer que os usuários troquem de idioma sem recarregar o aplicativo ou criá-lo uma vez por idioma.
- Seu texto muda com frequência e você quer que todos os idiomas se mantenham atualizados.
Quando escolher Angular i18n, ngx-translate ou Transloco
- Todo o texto deve ser traduzido ou revisado por uma pessoa.
- Você precisa de controle exato sobre os plurais e as palavras em cada idioma.
- Você quer uma solução gratuita sem serviço externo.
Passando para Magic Translate
Você pode trocar um componente por vez. Substitua a chave ou o atributo i18n pelo texto em inglês em <t> ou use t pipe para atributos. O guia Angular mostra a configuração.
Pronto para experimentar? Siga o guia de introdução para traduzir seu primeiro componente em cinco minutos.