Я пытаюсь понять, как перевести большие блоки html с угловым переводом (который я использую в качестве фильтра).Интерполяция в угловом переводе для html-инъекции
Я получил языковые файлы в формате JSON:
{
"PURPOSE": "Sie Damit Beabsichtigt",
"INTRO_VID": "Sehen Sie sich das Intro-Video",
"TOUR": "An der Tour teilnehmen",
"PURPOSE_COPY": "<p>Die Idee hinter [snip]</p><p>Currency: {{vm.testAmount}}</p><p>Date: {{vm.testDate}}</p>"
}
затем в HTML я беру строку язык и передать его перевод фильтр с данными модели представления (translate:vm
) и, наконец, htmlSafe фильтр, который позволяет ему быть проанализирован в HTML:
<div data-ng-bind-html="'PURPOSE_COPY' | translate:vm | htmlSafe"></div>
htmlSafe фильтр выглядит как:
angular.module('kitchenapp').filter("htmlSafe", ['$sce', function($sce) {
return function(htmlCode){
return $sce.trustAsHtml(htmlCode);
};
}]);
html вводится на страницу в порядке, но не компилируется, хотя я передал модель представления для перевода. :(