У меня есть серия файлов интернационализации json с базовыми строками, массивами строк и массивами объектов json, и я пытался отображать их в angular, используя различные библиотеки i18n. Файл en_GB находится ниже
{
"key": "value en_GB",
"headings": ["header1 en_GB", "header2 en_GB", "header3 en_GB"],
"objects": [
{"title": "title1 en_GB", "subject": "subject1 en_GB"},
{"title": "title2 en_GB", "subject": "subject2 en_GB"},
{"title": "title3 en_GB", "subject": "subject3 en_GB"}
]
}
Я пробовал angular-translate - https://angular-translate.github.io/ - но он не поддерживает массивы. Обходной путь - вернуть строку, разделенную разделителем, а затем вызвать split () для этой строки. Однако он вообще не поддерживает возврат объектов JSON.
В настоящее время я изучаю ng-i18next - https://github.com/i18next/ng-i18next - модуль angular, использующий библиотеку i18next, и он довольно близок к тому, что мне нужно.
Строковые массивы разделяются символами новой строки - «\ n» - поэтому я разделил этот символ для итерации по массиву, но у меня все еще та же проблема с массивами объектов JSON. Я могу отображать определенные индексы в массиве с индексом - например, objects.0.title, но я не могу выполнить итерацию с помощью ng-repeat.
Я установил здесь плункер, который демонстрирует это - http://plnkr.co/gTuHDZRK0j2fJkw5PBsG Кто-нибудь может предложить способ перебора объектов в массиве "объекты"?