Angular i18n - Перевести значение Typescript в отображение атрибутов HTML
Есть ли возможность сделать перевод для атрибутов HTML, которые будут получены из функций машинописи? Например, см. Ниже.
<myCustomElement buttonId="personDetails" [title]="CustomSectionDisplayName('PersonDetails')" link="Person details" linkText="Name, age and gender"></myCustomElement>
Для приведенного выше кода я хотел бы перевести значение, поступающее в атрибут [title]. Для статических значений мы можем достичь этого. Но здесь, это динамично. Итак, кто-то может предложить мне какой-либо вариант, который мы имеем в i18n?
[Примечание: я не жду ответов, так как мы можем достичь других библиотек, таких как ngx-translate и т. Д.]
Я хочу знать это плохо. Пожалуйста, дайте мне знать.
1 ответ
Я думаю, что вы можете попробовать использовать каноническую форму для привязки, используйте, например, bind-title вместо [title], затем добавьте атрибут i18n следующим образом: i18n-bind-title="test@@title", это работает для меня!
Чтобы пометить атрибут для перевода, добавьте атрибут в форме i18n-x, где x - имя атрибута для перевода. В следующем примере показано, как пометить атрибут title для перевода, добавив атрибут i18n-title в тег img:
Эта техника работает для любого атрибута любого элемента.
Вы также можете назначить значение, описание и идентификатор с помощью синтаксиса i18n-x="|@@".