Desde Angular 9 podemos usar
$localize`Hello ${name}:name:`
Para i18n en código mecanografiado. Esto todavía tiene algunas limitaciones, ya que el ng xi18n
comando no detecta las cadenas, pero si estos textos se agregan manualmente al archivo de traducción, funciona.
La $localize
función está bastante bien documentada en el JSDoc en la fuente , sin embargo, no explica cómo trabajar con plurales. Lo que quiero decir es algo como esto (pseudocódigo):
$localize`Hello {${count}, plural, =1 {reader} other {readers}}`
¿Es esto posible con $localize
? En caso afirmativo: ¿cómo? En caso negativo: ¿cómo compila Angular tales expresiones de HTML a TypeScript?
<span i18n>Updated {minutes, plural, =0 {just now} =1 {one minute ago} other {{{minutes}} minutes ago}}</span>
? Eso está en los documentos. Bastante similar a lo que quieres