2016-01-29 4 views
2

У меня возникают проблемы с символами UTF8 при использовании SanitizeValueStrategy('sanitize'). Я должен использовать его, так как клиент использует языковые файлы для редактирования текстов, и он может использовать тег, как <b> или <i> ...Угловой перевод символов UTF8 (pascalprecht.translate)

мне нужен использовать только файл JSon для переводов. Клиент не коснется кода приложения, чтобы изменить любой текст. JSON файл:

{ 
    "H1": "Typy domů", 
    "NAME": "Křestní" 
} 

проблема, мысли, возникает только при использовании интерполяции угловой-х:

<h1 translate>houseTypes.H1</h1> 
Typy domů 

я могу использовать этот метод, чтобы поместить текст внутри тела элемента, но это проблемы по-прежнему имеет место для атрибутов.

<input placeholder="'houseTypes.NAME'|translate"></h1> 
K&#345;estn&#237; 

Вопросы есть:
Как я могу получить UTF8 символы должны быть написаны правильно, а только с помощью статического загрузчика файла JSON в интерполяций, или любым другим способом в атрибутах, как это placeholder.

+0

я не вижу проблемы. «Тип domů» выглядит хорошо для меня, и «Křestní» корректно HTML экранирован. Или он выглядит как "K ř estn í" в реальном времени? – deceze

+0

@deceze это отображается в тексте как экранированный – Akxe

ответ

9

Для тех, кто struggeling на поиск способа, как сделать UTF-8 символов нормально даже в {{interpolations}}, это способ сделать это:

$translateProvider.useSanitizeValueStrategy('sanitizeParameters'); 

Таким образом Sanitize будет всегда, даже в интерполяциях.

2

У вас есть два варианта:

  1. Используйте sanitizeParameters стратегии, которая будет дезинфицировать только динамические параметры, но не фактический перевод (шаблон). Если у вас есть перевод под контролем (но не динамические значения), это будет работать.
  2. Используйте стратегию escape (или escapeParameters), которая не использует дезинфекцию, а избегает.

Для меня эта проблема была решена, когда установлена ​​SanitizeValueStrategy обнулить

$translateProvider.useSanitizeValueStrategy(null); 
Смежные вопросы