我有一个带有 ngTranslate 复数形式的模板:
en-US "{count, plural, one{1 accepted} other{# accepted}}"
pt-BR "{count, plural, one{1 aceito} other{# aceitos}}"
但我想把数字放在span
标签之间:
en-US "{count, plural, one{<span>1</span> accepted} other{<span>#</span> accepted}}"
pt-BR "{count, plural, one{<span>1</span> aceito} other{<span>#</span> aceitos}}"
这样,如果我使用translate
属性指令:
<span translate="LBL_ACCEPTED" translate-values="model.i18nValues" translate-interpolation="messageformat"></span>
HTML 被加密,我可以在最终结果中看到 HTML 标记。所以我使用ng-bind-html
指令:
<span ng-bind-html="'LBL_ACCEPTED' | translate:model.i18nValues:'messageformat' | trustHtml"></span>
结果相同。HTML 显示给用户。
有没有办法解密这个 HTML 标签?
编辑:
该问题并非特定于 ngMessageFormat 使用。如果我有类似的翻译"<b>{{count}}</b> accepted"
,则标签会被转义。我尝试添加translate-compile
指令,但似乎没有任何效果。