Depuis Angular 9, nous pouvons utiliser
$localize`Hello ${name}:name:`
Pour i18n en code tapuscrit. Cela a encore quelques limitations car la ng xi18n
commande ne détecte pas les chaînes, mais si ces textes sont ajoutés manuellement au fichier de traduction, cela fonctionne.
La $localize
fonction est assez bien documentée dans le JSDoc dans la source , mais elle n'explique pas comment travailler avec des pluriels. Ce que je veux dire, c'est quelque chose comme ça (pseudo-code):
$localize`Hello {${count}, plural, =1 {reader} other {readers}}`
Est-ce possible avec $localize
? Si oui: comment? Si non: comment Angular compile-t-il de telles expressions de HTML vers TypeScript?
<span i18n>Updated {minutes, plural, =0 {just now} =1 {one minute ago} other {{{minutes}} minutes ago}}</span>
? C'est dans les documents. Assez similaire à ce que vous voulez