Мы проводим тестирование с пакетом angular-l10n для реализации локализации в нашем проекте angular 7. Мы столкнулись с некоторыми проблемами с множественными переводами. Мы пытаемся перенести некоторые испанские переводы, используемые в нашей угловой реализации JS, следующим образом:
"unit": "{{count, plural, =1 {unidad} other {unidades} }}"
Это соответствует формату сообщения ICU здесь - http://userguide.icu -project.org / formatparse / messages"
Однако этот формат не поддерживается переменной множественной карты i18nPluralPipe. Я могу реализовать с помощью переменной multMap следующим образом:
itemPluralMapping = {
'unit': {
'=0': 'unit', '=1': 'unit', 'other': 'units'
}
}
С шаблоном следующим образом:
<p>{{units | i18nPlural:itemPluralMapping['unit'] | translate:lang}}</p>
Я даже могу поместить его непосредственно в шаблон следующим образом:
<span i18n>{count, plural, =1 {{{'unit' | translate:lang }}} other {{{'units' | translate:lang }}}}</span>
Однако как может работать следующая запись в locale-es.json?
"unit": "{{count, plural, =1 {unidad} other {unidades} }}"