#angular #internationalization #angular-i18n
Вопрос:
Можно ли использовать переменные в строке углового шаблона i18n?
В машинописном тексте я могу использовать строку шаблона, например:
public welcomeMessage = $localize`:@@test.welcome: Hello ${this.name}:user_name:! How's your day?`;
Могу ли я использовать что-то подобное в html-шаблонах? напр.
<p i18n="@@test.welcome">Hello {{name}}:user_name:! How's your day?</p>
Надеюсь, вы меня поняли.
Ответ №1:
Я столкнулся с той же проблемой, и в документации Angular i18n несколько неясно, как интерполировать и называть интерполированный заполнитель. Для простой интерполяции текста вы можете просто использовать:
<p i18n>Hello {{name}}! How's your day?</p>
Но AFAIK в настоящее время нет способа назвать интерполированный заполнитель, он просто превратится в интерполированный текст:
<source>Hello <x id="INTERPOLATION" equiv-text="{{name}}"/>! Howamp;apos;s your day?</source>
Однако вы всегда можете вручную изменить заполнитель ( equiv-text
) в извлеченном файле XLIFF.