0

У меня есть файл json, который используется для хранения моих ключей/строк для локализации с использованием углового перевода. Существует строка «Профиль & Предпочтения», которые я использую на мой взгляд. Когда я добавляю эту строку с помощью нг-связывания-HTML строка отображает как:& в моем JSON отображается как & в режиме Angular?

Профиль & Preferences

Я думал, что нг-связывать-HTML должен был преобразовать его к &. Как мне получить его для отображения & вместо &? Я попытался изменить значение строки в моей JSON к &, но тогда он просто показывает, как:

Профиль & Предпочтения

Вот тег, я использую:

<h3 ng-bind="'REGISTRATION_3.profile-preferences' | translate"></h3> 

Я также попробовал предложения в With ng-bind-html-unsafe removed, how do I inject HTML?.

Когда я использовал фильтр, предложенный в указанном выше связан вопросе:

app.filter('html', ['$sce', function ($sce) { 
    return function (text) { 
     return $sce.trustAsHtml(text); 
    };  
}]); 

Я получаю это в результате:

Profile &amp;amp; Preferences 

Я также проверил, что я инъекционный «ngSanitize» в моем приложение.

+1

Возможный дубликат [С нг-связывать-HTML-небезопасным удалены , как мне добавить HTML?] (http://stackoverflow.com/questions/19415394/with-ng-bind-html-unsafe-removed-how-do-i-inject-html) – CollinD

ответ

1

Я понял это, я набрал слишком быстро и с табуляцией, когда вместо ng-bind-html выбрано 'ng-bind'. Виноват.

То, что работало использовал этот фильтр app.js:

app.filter('html', ['$sce', function ($sce) { 
    return function (text) { 
     console.log('text is '); 
     console.log(text); 
     return $sce.trustAsHtml(text); 
    };  
}]); 

и использовать его в моем теге, как это:

<h3 ng-bind-html="'REGISTRATION_3.profile-preferences' | translate | html"></h3> 

 Смежные вопросы

  • Нет связанных вопросов^_^